我正在寻找一种可靠方式,以编程方式查找并列出Android设备中的所有可用服务(运行和未运行)。
我在API中找到的最接近的内容是ActivityManager
上的getRunningServices(),但即便如此也是大胆标记的:
注意:此方法仅用于调试或实现服务管理类型用户界面。
并且它仅列出正在运行的服务。
是否有可靠的方法来查找给定Android设备中的所有可用服务?
(理想情况下,如果存在此类方法,则应与API / SDK 8兼容)
答案 0 :(得分:6)
您可以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兼容。
答案 1 :(得分:1)