首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在android中获取可用的热点网络并在列表中显示

如何在android中获取可用的热点网络并在列表中显示
EN

Stack Overflow用户
提问于 2017-06-19 13:02:10
回答 1查看 115关注 0票数 0

我正在做一个安卓游戏,其中用户可以玩游戏使用热点连接像分享它应用程序连接两个用户使用热点。我在谷歌上搜索,但他们只显示wifi网络的列表,但我只想显示在附近的by.Please帮助我的家伙可用热点。

EN

回答 1

Stack Overflow用户

发布于 2017-06-19 13:12:46

您需要创建一个BroadcastReceiver来侦听Wifi扫描结果:

private final BroadcastReceiver mWifiScanReceiver = new BroadcastReceiver() { @Override public void onReceive(Context c, Intent intent) { if (intent.getAction().equals(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION)) { List<ScanResult> mScanResults = mWifiManager.getScanResults(); // add your logic here } } }

onCreate()中,您将分配mWifiManager并启动扫描:

代码语言:javascript
复制
mWifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE);
registerReceiver(mWifiScanReceiver,
new IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
mWifiManager.startScan();

只有当您拥有适当的权限时,getScanResults()才会返回数据。为此,将以下两行之一添加到您的AndroidManifest.xml中:

代码语言:javascript
复制
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />

另请注意,在23+接口中,必须在运行时请求权限。(对于实验室环境,您还可以在设置中手动授予权限-所需的代码较少,但不建议最终用户应用程序使用。)

请注意,每次有新的扫描结果可用时,处理扫描结果的代码都会运行,从而更新结果。

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

https://stackoverflow.com/questions/44622570

复制
相关文章

相似问题

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