首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >对粗略位置执行需要权限的网络扫描

对粗略位置执行需要权限的网络扫描
EN

Stack Overflow用户
提问于 2016-04-01 05:33:33
回答 1查看 4K关注 0票数 4

我在一个应用程序上工作,它做了一个网络扫描,并把所有找到的SSID到一个微调。

Android Studio警告您需要权限才能使用CHANGE_WIFI_STATE。在将其添加到清单中时,Android Studio不会通过WifiManager.getScanResults()返回0网络给出任何警告。我发现我需要为ACCESS_COARSE_LOCATION添加/请求权限。

我只需要网络SSID,我不关心用户位于何处,那么为什么我/用户需要允许位置权限才能获得可用网络的列表。下面是我目前进行扫描的方式:

代码语言:javascript
复制
    activity.registerReceiver(mWifiScannerReceiver, new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
            wifiManager = (WifiManager)activity.getSystemService(Context.WIFI_SERVICE);

            wifiManager.startScan();

And my receiver:

if (intent.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION))
            {
                List<ScanResult> scanResults = wifiManager.getScanResults();
                wifiNetworkList.clear();
                //List<String> ssids = new ArrayList<>();
                for (int i = 0; i < scanResults.size(); i++)
                {
                    wifiNetworkList.add(scanResults.get(i).SSID);
                    //ssids.add(scanResults.get(i).SSID);
                }
                //wifiNetworkList = ssids;
                wifiAdapter.notifyDataSetChanged();
            }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-01 05:38:33

我不关心用户位于何处

可以,但是给定网络SSID,如果知道该WiFi网络的位置,您就可以找到用户所在的位置。

为什么我/用户需要允许位置权限才能获得可用网络的列表

为了改善用户隐私,as of Android 6.0

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36344239

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档