如何在应用程序启动时调用 AIDL 服务

How to call AIDL services on app startup

我的应用名为 MyNiceApp。 MyNiceApp 主要是一个加载 CORE 视图的核心,该视图由用户根据需要下载的其他插件填充。我在核心视图上定义了各个区域,插件可以通过 MyNiceApp 中的接口填充这些区域。如何在应用程序启动时加载通过AIDL实现这些接口的应用程序?

提前谢谢大家。

更新

可以帮助实现此功能的任何其他方法就足够了。它不必只能通过 AIDL 实现。

调用 bindService(),使用明确的 Intent 标识插件的导出服务。

要确定存在哪些插件,请使用 PackageManagerqueryIntentServices() 查找所有具有与您的应用相关联的 <intent-filter> 服务的应用。通过签名检查确认实现匹配的应用程序是他们所说的人。然后,您可以使用 queryIntentServices() 中的 ResolveInfo 构造用于绑定的显式 Intent

This pair of sample apps演示了基本过程。在我的例子中,我期待一场比赛,而你可能期待 N 场比赛。