我正在开发一个应用程序,它将使用另一个现有应用程序的信息。如何检查应用程序是否安装在模拟器中。
我尝试了以下功能:
boolean isInstalled = isPackageInstalled("com.example.myapp", context.getPackageManager())
public static boolean isPackageInstalled(String packageName, PackageManager packageManager) {
try {
return packageManager.getApplicationInfo(packageName, 0).enabled;
}
catch (PackageManager.NameNotFoundException e) {
return false;
}
}
上述函数返回FALSE。但是应用程序已经安装在模拟器中。
对于 Android 11,访问已安装的包数据已更改。
您需要有额外的权限才能查询安装的内容。
如果您知道需要查询的特定应用程序,请添加以下内容:
<manifest>
<queries>
<package android:name="com.example.myapp" />
</queries>
...
</manifest>
到您的清单。
有关更多详细信息,请参阅https://proandroiddev.com/how-to-get-users-installed-apps-in-android-11-b4a4d2754286
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句