Android - 如何识别应用程序是否以root模式安装?

时间:2012-06-21 13:40:21

标签: android root

我可以获得设备上安装的应用程序列表(PackageInfo / ApplicationInfo),但想知道每个应用程序是默认安装还是电话公司安装(在巴西,公司安装了一些我们无法删除的应用程序root权限)。 我正在考虑确定应用程序是否处于root模式,但我不知道该怎么做。有人会帮助我吗?


我想要这样的东西:

PackageManager pm = context.getPackageManager();
List<PackageInfo> packagesInfo = pm.getInstalledPackages(PackageManager.GET_META_DATA);
for (PackageInfo packageInfo : packagesInfo) {
    if (isPackageRooted(packageInfo) { // this method I need!!!!!
        // Do stuff
    }
}

1 个答案:

答案 0 :(得分:0)

如果您想在手机上安装应用列表,请执行以下操作

你可能比查看Android源代码更糟糕。 您可以在线浏览,从这里开始:

android.git.kernel.org Git

虽然如果您希望能够搜索和检查交叉引用,您可能希望下载所有代码,并在Eclipse中查看。

这是“设置”应用中指向ManageApplications类的链接。 它应该是一个好的起点,因为它必须列出所有的应用程序。 有一个名为getInstalledApps()的方法,你可能想看一下。

android.git.kernel.org Git - platform/packages/apps/Settings.git/blob - src/com/android/settings/ManageApplications.java

在上面的课程中,您可以区分根应用和用户应用。

如果您想从Root Android Android手机中删除默认应用程序,则链接为here..

希望这可以帮助你..