Android 如何在多个应用程序共用的库中包含的方法中获取应用程序的版本名称?

Android 如何在多个应用程序共用的库中包含的方法中获取应用程序的版本名称?,android,build.gradle,buildconfig,Android,Build.gradle,Buildconfig,我开发了一个库来共享两个应用程序通用的代码。其中一个共享方法用于显示应用程序的版本名称。此版本名称在每个应用程序的build.gradle文件中设置。当我在库方法的代码中使用BuildConfig.VERSION\u NAME时,它返回库的版本名。如何将变量集引用到应用程序梯度文件中?您将无法使用BuildConfig.VERSION\u NAME,因为在编译库时,消费应用程序的BuildConfig将不存在 相反,您需要使用包管理器查询当前应用程序的版本名,如下所示: public Strin

我开发了一个库来共享两个应用程序通用的代码。其中一个共享方法用于显示应用程序的版本名称。此版本名称在每个应用程序的
build.gradle
文件中设置。当我在库方法的代码中使用
BuildConfig.VERSION\u NAME
时,它返回库的版本名。如何将变量集引用到应用程序梯度文件中?

您将无法使用
BuildConfig.VERSION\u NAME
,因为在编译库时,消费应用程序的
BuildConfig
将不存在

相反,您需要使用包管理器查询当前应用程序的版本名,如下所示:

public String getCurrentApplicationVersionName(Context context) {
    PackageManager packageManager = context.getPackageManager();
    PackageInfo info = packageManager.getPackageInfo(context.getPackageName(), 0);
    return info.versionName;
}

您可能需要发布代码。现在,听起来你不应该有一个图书馆,但我认为问题在于你如何措辞这个问题。