Android BroadcastReceiver:在默认进程或新进程中运行它



我有一个带有两个广播接收器的应用程序,其中一个用于接收数据,另一个用于发送数据。我已经看到它们有一个属性 android:process 使它们在应用程序的默认进程或另一个进程中运行。在我使用 google 找到的示例中,接收器被设置为在进程 ":remote" 中运行。

我的问题是,使用每个选项的优点和缺点是什么?

当您

想与其他应用程序共享资源时,使用与应用程序的默认进程不同的进程会很方便。

因此,您需要安排两个具有相同进程名称的应用程序,如果您的进程名称以较低字符开头,则会生成全局进程。如果它以冒号开头:则该过程是私有的。请记住,要在两个应用程序之间共享进程,您需要相同的用户 ID 和相同的应用程序证书。

您还必须仅加载一次资源,并获得内存消耗的好处。

欲了解更多信息

进程有自己的主线程。因此,当使用不同的过程时,即 :remote,则表示该进程中定义的代码将在单独的线程上运行。对于普通工作流,通常不需要执行此操作。

最新更新