我正在寻找一种可靠的方式来以编程方式查找和列出Android设备(正在运行和未运行)中的所有可用服务。

我可以在API中找到的最接近的东西是ActivityManager上的getRunningServices(),但即使是粗体标记也是如此:

注意:此方法仅用于调试或实现服务管理类型的用户界面。

而且它只列出正在运行的服务。

有没有一种可靠的方法来查找给定Android设备中的所有可用服务?

(理想情况下,如果存在这种方法,则应与API / SDK 8及更高版本兼容)

最佳答案

您可以enumerate all packagesretrieve their services

List<PackageInfo> pkgs = getPackageManager().getInstalledPackages(PackageManager.GET_SERVICES);
for(PackageInfo pkg : pkgs) {
  // You can now use pkg.services
}


兼容API 1。

关于android - 如何列出Android设备中的所有服务,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19758611/

10-11 22:30
查看更多