我有一个广播员,每隔一段时间都称呼,我注意到很多人都在使用

android: process =":remote" 

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

有帮助吗?

解决方案

通过定义接收器 android:process=":remote" 您基本上在其他过程(= VM)中运行接收器。对于典型的用例,您无需在其他过程中运行此操作,并且您想做的任何事情都可以在本地(在APK过程中)运行。

使用的缺点 android:process=":remote" 是您需要其他资源才能运行(在这种情况下,一个单独的过程)。这样做时,您基本上要处理2个VM,并且在您的应用程序和远程服务之间不再共享静态字段等一些模式。

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

我发现大多数时候,对于最常见的用例,您可以不使用 android:process=":remote".

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top