我开发了一个Android应用程序,有1个进程和2个服务。但我注意到“Google 服务”有 2 个进程和 1 个服务。怎么会有2个进程呢?我在进程和线程上阅读了一些内容,试图了解有关进程的更多信息。它谈到有一个清单条目,但没有具体的例子我不明白。有人可以解释一下 Android 应用程序如何拥有多个进程并提供具体示例吗?
您可以在清单中指定
android:process=":remote"
,以便在单独的进程中运行活动/服务。
“remote”只是远程进程的名称,你可以随意称呼它。如果您希望多个活动/服务在同一进程中运行,只需为其指定相同的名称即可。
<activity android:name=".RemoteActivity" android:label="@string/app_name" android:process=":RemoteActivityProcess"/>
如果您正在寻找示例,请查看hogwarts库,它将为您提供在Android中进行多进程编程的设施。
基本上,为了在“自己的”进程中运行服务,您需要具备以下条件。
以及其他
我有一个在 Wince 中运行的应用程序,用 C# 编写;使用maui.net成功移植到Android,此应用程序需要在后台运行,其他应用程序将向此后台应用程序发送消息,用于打印标签和检查蓝牙状态(打印机有纸吗?是否在线?是连接了吗?)。 然后,我正在研究如何创建与其他应用程序通信的应用程序。 我在YouTube上看到了这个视频,它对我了解后台进程、IPC、Binder、AIDL有很大帮助。 来自 YouTube:“此截屏视频来自 Aleksandar Gargenta 于 2012 年 12 月 5 日举行的 AnDevCon IV 演示。” 我在 2025 年 1 月 23 日看到了这个视频,我不知道这个视频什么时候才能发布,我强烈建议你观看。 Android Binder IPC 框架