gpt4 book ai didi

android - 如何从apk获取引用的内部库的版本

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:12:57 28 4
gpt4 key购买 nike

我已经通过 maven + eclipse 创建了 apk。

它是一个单独的文件,内部引用了由 mvn dependencies 提供的库。在我的 android 上一切正常,但我需要在 引用库的运行时版本 中显示。我知道如何显示我的应用程序的版本(来自 androidManifest.xml),但问题是获取其他使用的库的版本,它以某种方式包含在我的 apk 中。

在 apk 中我没有看到我引用的 jar,我想它是由 class.dex 制作的。

我找到了从 jar 库获取版本的方法,但它不适用于 apk。

我们能否在运行时找到内部引用库的版本?

最佳答案

让我重新表述一下您的问题。您开发了一个使用第三方库的移动应用程序,您的目标是从 APK 中找到该第三方库的版本。如果我理解正确的话,然后我最近遇到了类似的要求。首先,第三方 jar 的 list 将具有版本信息。当您构建 APK 时,包含版本信息的 list 信息不会与 APK 的 AndroidManifest 文件合并。AndroidManifest 架构似乎不提供此功能。在我们的例子中,我们发布了库,所以一个可能的解决方案是我们可以将版本信息添加到库的 Android Manifest 文件中 Activity 元素内的元数据元素中,这样 apk 在构建时将从库的 Activity 元素中复制 Activity 元素android list 到应用程序的 android list 。这样我们就可以将库的版本信息传递给主 APK 的 Android list 。也许我们可以请求修改 Android list 的架构,以提供包含内部库版本信息的规定。请检查以下链接。 https://developer.android.com/guide/topics/manifest/manifest-element.html

另一种解决方案可能是可以使用 jarsigner 插入自定义条目(在构建 APK 后,它包含第三方库版本信息到 APK 的 list 文件中。这又不是标准解决方案。

关于android - 如何从apk获取引用的内部库的版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14158600/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com