检查其他应用程序是否使用NDK /支持库/第三方库

时间:2013-07-04 10:34:01

标签: java android

我注意到某些应用程序可以扫描你的Android手机并告诉你哪个应用程序正在使用什么库。例如:

Facebook正在使用Android NDK,Android支持库,Google云消息传递。

我的猜测是他们可能使用了 PackageManager ApplicationInfo ActivityInfo 等API。

但不知何故,我不确定他们使用哪种特定的API来获得结果。知道他们是怎么做到的吗?

1 个答案:

答案 0 :(得分:0)

我不知道该应用程序是否使用“Android支持库”是如何获取信息,但其余部分......请查看PackageManager。获得经理的参考后,您可以获得有关已安装应用的信息:

PackageManager packageManager = getPackageManager();
List<PackageInfo> packages = packageManager.getInstalledPackages(0);
for(PackageInfo package : packages){
    String[] permissions = packageInfo.requestedPermissions;
    // knowing permission you can conclude, what does app uses: 
    // GCM - com.google.android.c2dm.permission.RECEIVE is required
    // ...

    ApplicationInfo app = package.applicationInfo;
    String apth = app.nativeLibraryDir;
    // based on this information you can conclude whether app uses NDK
}