我在BroadcastRecevier中得到了一个BroadcastRecevier:
02-08 12:18:39.169 E/AndroidRuntime(22363): java.lang.RuntimeException: Unable to start receiver surin.de.wakeonlan.BackgroudReceiver: java.lang.SecurityException: WifiService: Neither user 10171 nor current process has android.permission.ACCESS_WIFI_STATE.
02-08 12:18:39.169 E/AndroidRuntime(22363): at surin.de.wakeonlan.BackgroudReceiver.onReceive(BackgroudReceiver.java:26)我的BackgroundReceiver班:
@Override
public void onReceive(Context context, Intent intent) {
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo(); //line 26
String ssid = wifiInfo.getSSID();接管人在这里登记在“宣言”中:
<receiver android:name="surin.de.wakeonlan.BackgroudReceiver"
android:exported="false">
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>这也出现在应用程序标签中的Manifest中:
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />发布于 2015-02-08 12:18:07
您还需要添加以下权限。
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>并确保<uses-permission是清单标记的直接子标记,而不是应用程序标记。
发布于 2015-02-08 12:21:00
添加以下2个权限(并保留android.permission.ACCESS_WIFI_STATE )
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />清理并构建项目
https://stackoverflow.com/questions/28393490
复制相似问题