Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/181.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android6.0 WifiManager.getScanResults()_Java_Android_Permissions_Android Permissions_Android Wifi - Fatal编程技术网

Java Android6.0 WifiManager.getScanResults()

Java Android6.0 WifiManager.getScanResults(),java,android,permissions,android-permissions,android-wifi,Java,Android,Permissions,Android Permissions,Android Wifi,列表的大小为0,这是Android6.0中WifiManager.getScanResults()的返回值 我已经给了他权限(访问精细位置和访问粗糙位置),但是列表的大小仍然是0。 我确信应用程序在我的手机设置->应用程序中具有这些权限。 你知道原因吗?有解决方案吗?从Android 6.0开始,权限行为已更改为运行时 if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && checkSelfPermission(Manif

列表的大小为0,这是Android6.0中WifiManager.getScanResults()的返回值 我已经给了他权限(访问精细位置和访问粗糙位置),但是列表的大小仍然是0。 我确信应用程序在我的手机设置->应用程序中具有这些权限。
你知道原因吗?有解决方案吗?

从Android 6.0开始,权限行为已更改为运行时

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M && checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION) != PackageManager.PERMISSION_GRANTED){
   requestPermissions(new String[]{Manifest.permission.ACCESS_COARSE_LOCATION},
                 PERMISSIONS_REQUEST_CODE_ACCESS_COARSE_LOCATION);
    //After this point you wait for callback in onRequestPermissionsResult(int, String[], int[]) overriden method

}else{
    getScanningResults();
   //do something, permission was previously granted; or legacy device
}



@Override
 public void onRequestPermissionsResult(int requestCode, String[] permissions,
         int[] grantResults) {
     if (requestCode == PERMISSIONS_REQUEST_CODE_ACCESS_COARSE_LOCATION
             && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
         // Do something with granted permission
        mWifiListener.getScanningResults();
     }
 }

我已经同意了,但是还是没有效果。我不知道为什么在我回复的时候这种方式不成功,但是今天它突然生效了。您的答案是正确的。DNwalter,答案是正确的,但您还需要在设备上启用gps,以获得不为空的列表。这是一个众所周知的问题