1

我正在编写一个具有某种模块化系统的应用程序。它有一个核心应用程序和一些应用程序,它们由一个Service实现所需接口的 . 我按照指南创建了 IPC 通信。但现在我需要获取系统上安装的所有服务,我的核心应用程序可以使用这些服务。我该怎么做呢?我的意思是,有没有办法Service用某种标签标记我的应用程序,然后PackageManager#getInstalledPackages()根据该标签值过滤结果?这样做的常见做法是什么?

4

1 回答 1

1

创建您的活动将响应的自定义 Intent。然后,您可以使用 PackageManager.queryIntentServices 来获取匹配服务的列表。您可以从 ResolveInfos 中嵌入的信息中获取包信息等。

理想情况下,您实际上会使用这些意图来调用服务,但您始终可以将它们用作标识标签并退回到您之前使用的绑定机制。

于 2010-10-10T16:26:14.630 回答