gpt4 book ai didi

android - 我应该使用 android : process =":remote" in my receiver?

转载 作者:IT老高 更新时间:2023-10-28 13:15:51 26 4
gpt4 key购买 nike

我有一个经常被调用的 BroadcastReceiver,我注意到很多人都在使用

android: process =":remote" 

在他们的接收器中。我的用于检查一些事情,如果条件匹配,则激活警报。我的问题是我应该使用上面在 list 中发布的行吗?如果是这样,这样做有什么好处?

最佳答案

通过使用 android:process=":remote" 定义您的接收器,您基本上可以在不同的进程 (= VM) 中运行您的接收器。对于典型的用例,您不需要在不同的进程中运行它,并且您想做的任何事情都可以在本地(在您的 APK 进程中)正常运行。

使用 android:process=":remote" 的缺点是您需要额外的资源才能运行它(在这种情况下是一个单独的进程)。这样做时,您基本上是在处理 2 个虚拟机,并且某些模式(例如单例、静态字段)不能再在您的应用和远程服务之间共享。

使用 android:process=":remote" 的好处是,对于某些用例,启动一个在之后继续运行(在自己的进程中)的服务可能会很方便您已经关闭了应用程序,或者您希望远程客户端能够绑定(bind)到您的服务。您的广播接收器在调用 onReceive() 方法后在单独的进程中运行时不会阻塞您的应用程序主线程(但是,还有其他实现方式)。

我发现大多数时候,对于最常见的用例,您无需使用 android:process=":remote" 即可摆脱困境。

关于android - 我应该使用 android : process =":remote" in my receiver?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4311069/

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