获取 Android 应用程序包的所有已安装功能

Posted

技术标签:

【中文标题】获取 Android 应用程序包的所有已安装功能【英文标题】:Get all installed features for Android app bundles 【发布时间】:2021-11-03 17:53:19 【问题描述】:

我有一个安装其他安卓应用程序的安卓应用程序。我将有关已为应用程序安装了哪些功能的详细信息存储在共享首选项中。但是当我的应用程序的数据被清除时,我会丢失此信息。现在我必须重新填充所有已安装的功能。

使用PackageInfo,我可以得到splitNames,然后根据命名模式,我可以认为它是否是一个功能APK。

或者我可以解析每个 APK 的 androidManifest.xml,然后检查是否设置了 isFeatureSplit 标志。

我正在寻找任何推荐的方式来获取此信息。

【问题讨论】:

【参考方案1】:

您可以使用 Play Core 库吗?有一个方法“getInstalledModules”返回已安装的动态功能列表。

https://developer.android.com/reference/com/google/android/play/core/splitinstall/SplitInstallManager.html#getInstalledModules()

【讨论】:

感谢您的回答。我无法使用 Play 核心库,因为我希望我的应用程序可以在其他 Android 设备(如 Fire 平板电脑)中运行。所以我正在寻找一种如何使用 Android 的 API 的方法。另外,使用 Play 核心库,我只能安装我的应用程序的模块,对吗?但我也希望为其他应用程序安装模块。 你知道吗?

以上是关于获取 Android 应用程序包的所有已安装功能的主要内容,如果未能解决你的问题,请参考以下文章

Android 获取 应用列表 方法记录

获取android中所有已安装应用的名称、图标和包名

导出已安装到手机中程序的apk文件

确定特定包的版本

Android获取到手机应用图标并显示在页面上

关于获取Android系统所有已安装App信息的一些操作(详细)