Android - 如何在 JNI C 代码中获取已安装的包

标签 android java-native-interface package

我需要在 Android 上的 JNI C 中实现与以下 Java 代码等效的代码:

PackageManager pm = context.getPackageManager();
List<PackageInfo> packages = pm.getInstalledPackages(0);
for(PackageInfo packageInfo : packages) {
 ...
}

我的问题是如何在 JNI C 中获取已安装的软件包。这可能吗? 谢谢

最佳答案

最好的选择是通过 JNI 调用 PacakgeManager。没有“C接口(interface)”,必须通过系统服务。安装软件包会执行很多操作,因此仅将 APK 复制到正确的位置是不够的。

关于Android - 如何在 JNI C 代码中获取已安装的包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16069113/

相关文章:

android - 检查是否有默认应用程序的选择器 Intent

android - 仅在 android 中显示特定城市的谷歌地图

android - 在Android中使用OpenCV运行C/C++代码

c++ - 尝试使用 C++ 在 Linux 上执行命令时被阻止

Python:NLTK 或其他包中的布朗聚类?

java - 为什么 finish() 不立即退出处理?

android - 无法将数据从 Android 更新到服务器

javah -jni <classname> 不起作用?

R包cmd检查-无法识别非ascii字符

objective-c - #import 使用尖括号 < > 和引号 ""