gpt4 book ai didi

sip - Android VoIP 应用程序 : PARTIAL_WAKE_LOCK vs ignoring Battery Optimizations (doze whitelisting)

转载 作者:行者123 更新时间:2023-12-01 03:20:38 26 4
gpt4 key购买 nike

我正在使用 SIP 协议(protocol)开发 IP 语音 (VoIP) 应用程序,该协议(protocol)要求应用程序监听来电。这意味着应用程序不能休眠或死亡。

对于旧代码,这样做的方法似乎是获取 PARTIAL_WAKE_LOCK .

现在从 Android 6.0 及更高版本开始,有新的 Doze .建议,如果您不希望您的应用程序进入待机状态,您应该通过请求 REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 将其“列入白名单”。允许。根据 documentation,这是专门针对 VoIP 应用程序的。 .

这两个不同的东西似乎是相关的。我不确定它们是如何相关的 , 如果他们 互相干扰 , 如果我应该 使用其中一个或两个或两个 , 如果有 其他注意事项 .请解释。

另外,我不允许在这个项目上使用推送通知。如果您有其他节省电池的建议,请告诉我。

最佳答案

在你的情况下看起来像 你应该要求白名单 ,如 documentation你链接,它建议 GCM 可以与 SIP 协议(protocol)冲突。 我会像处理典型的运行时权限 一样处理这种情况.如果他们不想禁用与接听电话相关的功能,请在您的应用程序的某个位置(前创建主屏幕时)询问白名单以及您需要它的原因。

您一次应该只使用其中一个,您总是可以通过艰难的方式做到这一点并在没有 sip 的情况下处理 voip 调用,然后您可以使用来自服务器的推送通知来处理来电,但我认为除非有人能做到这一点你需要一个顶级产品。

对此没有解决方法,确实唯一的好方法是自己完成繁重的工作,因为用户使用电池优化器/改进的打盹应用程序很受欢迎,所以无论如何你都可能被杀死。

关于sip - Android VoIP 应用程序 : PARTIAL_WAKE_LOCK vs ignoring Battery Optimizations (doze whitelisting),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45537779/

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