Mar*_*los 7 android cellular-network 3g android-wifi android-permissions
嗨,我有以下代码,读取网络/ Wifi状态:
public String getMacAddress() {
WifiManager wm = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
return wm.getConnectionInfo().getMacAddress();
}
Run Code Online (Sandbox Code Playgroud)
这引发了
Caused by: java.lang.SecurityException: WifiService: Neither user 10032 nor current process has android.permission.ACCESS_WIFI_STATE
Run Code Online (Sandbox Code Playgroud)
和
public boolean is3G() {
ConnectivityManager connectivityManager = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
return !(connectivityManager.getNetworkInfo(
ConnectivityManager.TYPE_MOBILE).getState() == NetworkInfo.State.CONNECTED || connectivityManager
.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState() == NetworkInfo.State.CONNECTED);
}
Run Code Online (Sandbox Code Playgroud)
这引发了
Caused by: java.lang.SecurityException: ConnectivityService: Neither user 10032 nor current process has android.permission.ACCESS_NETWORK_STATE.
Run Code Online (Sandbox Code Playgroud)
在有人告诉我权限之前,那就是我的Manifest(相关部分):
<manifest>
<!-- usual tags for activitys... etc.. -->
<uses-permission android:name="android.permission.WRITE_OWNER_DATA" />
<uses-permission android:name="android.permission.READ_OWNER_DATA" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.INTERNET" />
<user-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<user-permission android:name="android.permission.ACCESS_WIFI_STATE" />
</manifest>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
10769 次 |
最近记录: |