我正在寻找一种可靠的方式来以编程方式查找和列出Android设备(正在运行和未运行)中的所有可用服务。
我可以在API中找到的最接近的东西是ActivityManager
上的getRunningServices(),但即使是粗体标记也是如此:
注意:此方法仅用于调试或实现服务管理类型的用户界面。
而且它只列出正在运行的服务。
有没有一种可靠的方法来查找给定Android设备中的所有可用服务?
(理想情况下,如果存在这种方法,则应与API / SDK 8及更高版本兼容)
最佳答案
您可以enumerate all packages和retrieve 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/