Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/351.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 旧应用无法在android N上获取WiFi扫描结果_Java_Android_Permissions - Fatal编程技术网

Java 旧应用无法在android N上获取WiFi扫描结果

Java 旧应用无法在android N上获取WiFi扫描结果,java,android,permissions,Java,Android,Permissions,我写了一个应用程序,可以检测wifi网络,当我按下网络时,它会给我有关该网络的详细信息。现在的问题是,我3年前写的,当时Android KitKat不需要用户的弹出权限,现在我在Android N上运行它,按下scan,它既不扫描也不给我弹出权限 我已经很长时间没有为android编程了,我不知道android应用程序编码要求的变化。你知道为什么会这样吗 应用程序使用的当前权限: 为了获得棉花糖和更高版本的WiFi扫描结果,还必须启用位置模式设置 从: 最近一次扫描中找到的访问点列表。应用程序必

我写了一个应用程序,可以检测wifi网络,当我按下网络时,它会给我有关该网络的详细信息。现在的问题是,我3年前写的,当时Android KitKat不需要用户的弹出权限,现在我在Android N上运行它,按下scan,它既不扫描也不给我弹出权限

我已经很长时间没有为android编程了,我不知道android应用程序编码要求的变化。你知道为什么会这样吗

应用程序使用的当前权限:


为了获得棉花糖和更高版本的WiFi扫描结果,还必须启用位置模式设置

从:

最近一次扫描中找到的访问点列表。应用程序必须 在中保持访问\u粗略\u位置或访问\u精细\u位置权限 为了得到有效的结果

之所以做出此更改,是因为可以根据WiFi扫描结果确定位置

作为额外的安全措施,应用程序现在需要请求位置权限才能查看WiFi扫描结果,此外,如果用户将其位置模式设置为关闭,则在后台运行时,没有应用程序可以查看扫描结果

因此,至少在您的清单中添加访问\u粗略\u位置权限,以便获得WiFi扫描结果:

如果将目标API版本保持在23以下,则无法在运行时请求权限。在这种情况下,您的应用程序将在安装时继续请求所有权限


如果将应用程序更新为目标API版本23或更高版本,则需要在运行时请求所有危险权限。有关在运行时请求位置权限的示例,请参阅。

问题是?为什么它不扫描或不给我弹出式权限而没有,任何人都很难帮助您。显然,第一个原因是你没有权限,第二个原因是你没有显示弹出窗口的代码。当我在另一部装有安卓kitkat的手机上运行它时,它会工作