从演示应用程序中获取Android库模块版本号

时间:2017-12-14 06:43:13

标签: android version-control android-library

我可以通过编程方式获取应用的版本名称,如this

String versionName = BuildConfig.VERSION_NAME; // 1.0

但是,我有一个library正在制作的演示应用。在我的项目中(因为库和演示应用程序在同一个项目中)我使用

dependencies {
    implementation project(":mongol-library")
}

在其他应用中,人们会使用

导入它
dependencies {
    implementation 'net.studymongolian:mongol-library:0.9.16'
}

在演示应用程序中,我想包含库的版本名称而不是演示应用程序版本名称。当然,我可以对字符串进行硬编码,并在每次更新库时更新它,但这很容易出错。有没有办法以编程方式访问库模块的版本名称?

相关问题

2 个答案:

答案 0 :(得分:6)

使用
String libVersionName = your.lib.package.name.BuildConfig.VERSION_NAME;

或在您的图书馆中,只需使用BuildConfig.VERSION_NAME即可获得它。

NB:
app模块中的BuildConfig.VERSION_NAMEyour.app.package.name.BuildConfig.VERSION_NAME

答案 1 :(得分:0)

以某种方式,BuildConfig的其他选项对我不起作用。 我最终得到了这段代码:

context.getPackageManager().getPackageInfo("com.package.name", 0).versionName

对于我的库,“ com.package.name”只是build.gradle依赖关系的第一部分:

implementation 'com.package.name:library:1.0.0'