[英]Android Nougat 7.1.1 broadcastReceiver don't receive the action WifiManager.SCAN_RESULTS_AVAILABLE_ACTION
i am working on Nexus 5X android Nougat 7.1.1 on BroadCastReceiver with action WifiManager.SCAN_RESULTS_AVAILABLE_ACTION defined in AndroidManifests.xml, but is don't work properly, is works only when i opened the wifi settings page.我正在使用在 AndroidManifests.xml 中定义的动作 WifiManager.SCAN_RESULTS_AVAILABLE_ACTION 在 BroadCastReceiver 上使用 Nexus 5X android Nougat 7.1.1,但无法正常工作,仅在我打开 wifi 设置页面时才有效。
Note: Since i have updated the device version from 7.0.0 to 7.1.1 this happening with me , before that, everything was working properly.注意:由于我已将设备版本从 7.0.0 更新到 7.1.1,这发生在我身上,在此之前,一切正常。
WiifiBroadcastReceiver.java WifiBroadcastReceiver.java
public class WifiBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
if(action.equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) {
List<ScanResult> wifiScanResult = new ArrayList<>();
WifiManager wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
if (wifiManager.isWifiEnabled()) {
wifiScanResult = wifiManager.getScanResults();
}
}
}
}
AndroidManifests.xml AndroidManifests.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.TestApp">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".LauncherActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<receiver android:name=".WifiBroadcastReceiver">
<intent-filter>
<action android:name="android.net.wifi.SCAN_RESULTS" />
</intent-filter>
</receiver>
</application>
</manifest>
It's the system error of the android 7.1.1.这是android 7.1.1的系统错误。
Some devices have been updated to Android 7.1.2 where this error was fixed, another ones now have rollback to the previous version.一些设备已更新到 Android 7.1.2,其中修复了此错误,另一些设备现已回滚到以前的版本。
您需要激活设备上的 GPS。然后它就会工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.