[英]How to check programmatically if an application is installed or not in Android?
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
我们已经以编程方式安装了应用程序。
引导我。 我不知道。 谢谢。
安卓 11 更新
您必须在清单中指定要搜索的确切捆绑包 ID。
facebook 和 whatsapp 的示例:
在“应用程序”上方的清单内(权限所在)
<queries>
<package android:name="com.whatsapp" />
<package android:name="com.facebook.katana" />
</queries>
这将允许您检查是否安装了 facebook 和 whatsapp,否则您将始终得到错误的检查。
关于该主题的进一步阅读:
https://medium.com/androiddevelopers/package-visibility-in-android-11-cc857f221cd9
在Kotlin中,最简单的方法可以是两步
1- 在 Manifest 中放置目标应用程序 ID 。 ex (com.src.turkey)
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools">
<queries>
<package android:name="com.src.turkey" />
</queries>
...
2- 在活动中
try {
val list = packageManager.getLaunchIntentForPackage("com.src.turkey")
if (list != null) {
Log.i("TAG", "downloadApps:$list")
}
} catch (e: PackageManager.NameNotFoundException) {
Log.i("TAG", "downloadApps: False")
}
没有任何弃用的,例如
queryIntentActivities
pm.getPackageInfo
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.