适用于本地热点模式的WifiLock解决方案

时间:2020-09-21 18:37:58

标签: android wifi android-wifi wifimanager

我正在开发需要本地网络连接的应用程序,因此我正在使用startLocalOnlyHotspot() API for API> 26。我的问题是,锁定设备后几秒钟,热点就会终止。

我要修复它的第一个尝试是使用WifiManager.WifiLock,如下所示,这对我而言并不可行。

override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View? {
    wifiLock = wifiManager.createWifiLock(WIFI_MODE_FULL_HIGH_PERF, TAG).apply { acquire() }
}

override fun onDestroyView() {
    wifiLock.release()
}

在检查WIFI_MODE_FULL_HIGH_PERF的API文档时,看来这仅在您是连接到AP的客户端时才有效,而在您是AP的情况下(我就是这种情况)

在此Wi-Fi锁定模式下,Wi-Fi不会节电。结果 以低数据包延迟运行。仅当 设备已连接到接入点。即使在 设备屏幕关闭或正在运行获取应用程序 的背景。此模式将消耗更多功率,因此应 仅在需要这种权衡时使用。

我需要一个解决方案的帮助,即使该设备被锁定,该解决方案也可以使本地热点AP保持唤醒状态。

0 个答案:

没有答案