PackageManager.getPackageInfo(packageName,flags)
方法可用于检查特定包是否已安装,它将返回PackageInfo或抛出PackageManager.NameNotFoundException
异常。如何检查库APK是否已安装?Trichrome库是库APK的一个示例:https://www.apkmirror.com/apk/google-inc/trichrome-library/trichrome-library-98-0-4758-101-release/trichrome-library-98-0-4758-101-3-android-apk-download/download/。
安装此APK后,调用
PackageManager.getPackageInfo('com.google.android.trichromelibrary', 0)
会抛出PackageManager.NameNotFoundException
异常。通过ADB查看,安装后,在
pm list packages
下不可见,但在pm list libraries
下可见,名称为"library:com.google.android.trichromelibrary"。有没有办法以编程方式确定库是否已安装?
PackageManager
的实现在某些情况下可能是设备特定的,我怀疑这就是该方法无法为您工作的原因。我还更新了答案,包括您的解决方案。 - mahdi