繁体   English   中英

Android PackageManager:检查是否已安装库 APK

[英]Android PackageManager: check if a library APK has been installed

PackageManager.getPackageInfo(packageName, flags)方法可用于检查特定的 package 是否已安装。 它返回 PackageInfo 或抛出PackageManager.NameNotFoundException

如何检查是否安装了库 APK? 库 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-下载/下载/

安装此 APK 后,调用PackageManager.getPackageInfo('com.google.android.trichromelibrary', 0)会抛出PackageManager.NameNotFoundException

通过 ADB 查看,我发现一旦安装,它在pm list packages下不可见,但在名称为“library:com.google.android.trichromelibrary”的pm list libraries下可见。

有没有办法以编程方式确定库是否已安装?

正如您在此链接中的pm源代码中所看到的, pm list libraries命令使用PackageManager.getSystemSharedLibraryNames() ,其记录在此处

如果此方法不起作用, PackageManager中还有其他方法可以获取有关共享库的信息。 正如@vmayorow 所提到的,这些方法之一是PackageManager.getSharedLibraries(0)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM