gpt4 book ai didi

android - 在 Android 上使用 WifiLock 时使用 WakeLock 是否过度?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:02:12 25 4
gpt4 key购买 nike

我的音频流应用程序仅使用 WifiLock 即可正常工作。

但是一些设备报告说当他们关闭屏幕时,连接被切断并且音频流被置顶。 (他们说这不会发生在 3G 上)

所以,我想也许我也可以使用部分唤醒锁。我不确定这是否能解决问题,但我认为这是一个选择。同时,在基本 WifiLock 工作时添加 WakeLock 可能会更快耗尽电池,并且可能无法解决问题。

您如何看待为此类问题和应用添加唤醒锁?

private static WifiLock wifiLock = ((WifiManager) appInstance().getSystemService(Context.WIFI_SERVICE))
.createWifiLock((android.os.Build.VERSION.SDK_INT>=12?WifiManager.WIFI_MODE_FULL_HIGH_PERF:WifiManager.WIFI_MODE_FULL), "myappwifilock");

新增行:

private static WakeLock wakeLock= ((PowerManager) appInstance().getSystemService(Context.POWER_SERVICE)).newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "myappwakelock");

(当然,我在创建服务和销毁服务时获取和释放这些锁。)

最佳答案

同时使用它们。我确信这种行为因电话而异。您可能希望搜索报告有关的设备 +“wifi”或“wifi 驱动程序”。您确定您的音频流应用程序仅与 WifiLock 一起正常工作吗?这听起来很奇怪 - CPU 进入休眠状态并且服务将停止 - 参见 Service, WakeLock .其他原因使电话保持唤醒状态。所以你需要一个唤醒锁

另一方面,如果您只使用唤醒锁,wifi 可能会关闭 - 我不确定您是否在使用它 - 但安全总比抱歉好。如果它确实关闭唤醒电话,则不会将其唤醒-对此我敢肯定。使用 wifi 锁对电池没有影响 - 使用 wifi radio 对电池有影响,而且你正在这样做。

所以两者 - 并确保您的服务获得它们 - 看看 WakefulIntentService

关于android - 在 Android 上使用 WifiLock 时使用 WakeLock 是否过度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20044318/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com