如何列出Android设备中的所有服务

sfi*_*nja 1 android android-service

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

我在API中找到的最接近的东西是getRunningServices(),ActivityManager但即使是大胆标记:

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

它无论如何都只列出正在运行的服务.

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

(理想情况下,如果存在此类方法,则应与API/SDK 8兼容)

Tob*_*ias 6

您可以枚举所有包检索其服务:

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

与API 1兼容.