程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了以编程方式获取我的 Android 应用程序中库的版本大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决以编程方式获取我的 Android 应用程序中库的版本?

开发过程中遇到以编程方式获取我的 Android 应用程序中库的版本的问题如何解决?下面主要结合日常开发的经验,给出你关于以编程方式获取我的 Android 应用程序中库的版本的解决方法建议,希望对你解决以编程方式获取我的 Android 应用程序中库的版本有所启发或帮助;

我的 AndroID 应用程序中有一个库,例如 UnityAds。我想在运行时获取版本名称和版本代码。我写了下面的代码,但总是发生异常。以编程方式获取此信息的最佳做法是什么?

实现'com.unity3d.ads:unity-ads:3.7.1'

try {
    Log.d("Version",getPackageManager().getPackageInfo("com.unity3d.ads",0).versionName);
} catch (PackageManager.nameNotFoundException E) {
    Log.e("error",e.getmessage());
}

解决方法

这行不通,PackageManager API 可帮助您使用包名称查找来检查是否安装了任何有效的包/应用。

由于库位于您自己的包的类路径中,因此在运行时引用这些 id 的唯一方法是使用工作流在编译期间记录这些 ID,并在运行时将其公开给您的应用程序。

以下方法是可行的:

  1. 在构建配置/资源 (https://developer.android.com/studio/build/gradle-tips#simplify-app-development) 中公开库元数据

  2. 自定义 gradle 插件将类路径中的所有库捕获到可以在运行时读取的资产中,类似于 https://github.com/google/play-services-plugins

使用 (1) 您无法方便地将其扩展到多个库,因此它仅适用于非常特定的需求。

(2) 可能需要对您的用例进行一些自定义(添加版本信息),但绝对是可扩展的

大佬总结

以上是大佬教程为你收集整理的以编程方式获取我的 Android 应用程序中库的版本全部内容,希望文章能够帮你解决以编程方式获取我的 Android 应用程序中库的版本所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。