Java Android Nougat 7.1.1广播接收器don';无法接收操作WifiManager.SCAN\u RESULTS\u AVAILABLE\u操作

Java Android Nougat 7.1.1广播接收器don';无法接收操作WifiManager.SCAN\u RESULTS\u AVAILABLE\u操作,java,android,Java,Android,我正在BroadCastReceiver上使用AndroidManifests.xml中定义的操作WifiManager.SCAN\u RESULTS\u AVAILABLE\u操作运行Nexus 5X android Nougat 7.1.1,但无法正常运行,只有在打开wifi设置页面时才能运行 注意:由于我已将设备版本从7.0.0更新为7.1.1,因此在此之前,一切正常 WiifiBroadcastReceiver.java public class WifiBroadcastReceive

我正在BroadCastReceiver上使用AndroidManifests.xml中定义的操作WifiManager.SCAN\u RESULTS\u AVAILABLE\u操作运行Nexus 5X android Nougat 7.1.1,但无法正常运行,只有在打开wifi设置页面时才能运行

注意:由于我已将设备版本从7.0.0更新为7.1.1,因此在此之前,一切正常

WiifiBroadcastReceiver.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();
            }
        }
    }
}
公共类WifiBroadcastReceiver扩展广播接收器{
@凌驾
公共void onReceive(上下文、意图){
String action=intent.getAction();
if(action.equals(WifiManager.SCAN\u RESULTS\u AVAILABLE\u action)){
List wifiscansult=new ArrayList();
WifiManager=(WifiManager)context.getSystemService(context.WIFI\u SERVICE);
if(wifiManager.isWifiEnabled()){
wifiScanResult=wifiManager.getScanResults();
}
}
}
}
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>

这是安卓7.1.1的系统错误。


一些设备已更新到Android 7.1.2,其中此错误已被修复,另一些设备现在已回滚到以前的版本。

您需要激活设备上的GPS。然后它将工作