我如何得到我的应用程序版本

谁能告诉我如何获得applcation版本的android?

这个页面有一个关于如何从java中完成的提示:

PackageManager manager = context.getPackageManager(); PackageInfo info = manager.getPackageInfo( context.getPackageName(), 0); String version = info.versionName; 

另外, 这个链接有关于如何正确设置您的应用程序版本的官方信息 。

我正在使用Android Studio,我意识到我可以使用一个行代码来获得这个。

 /*version name*/ BuildConfig.VERSION_NAME /*version code*/ BuildConfig.VERSION_CODE 

编辑:

如果您正在使用其他的android库,请确保从应用程序包中导入BuildConfig 。 这与自动生成的用于识别资源的R类相似。

要获取应用程序信息:

 PackageManager manager = this.getPackageManager(); try { PackageInfo info = manager.getPackageInfo(this.getPackageName(), 0); String packageName = info.packageName; int versionCode = info.versionCode; String versionName = info.versionName; } catch (NameNotFoundException e) { // TODO Auto-generated catch block } 
 public int getVersion(Context context) { try { PackageInfo pInfo = context.getPackageManager().getPackageInfo(context.getPackageName(), PackageManager.GET_META_DATA); return pInfo.versionCode; } catch (NameNotFoundException e) { return 0; } } } 

有关此链接的更多信息

在你(Module:app)gradle中定义版本名称和版本代码

 defaultConfig { applicationId "com.sing.smart" minSdkVersion 16 targetSdkVersion 23 versionCode 1 versionName "1.1.0" } 

的versionCode

versionCode是整数值,用于轻松区分应用程序版本。

应用程序开发人员在Android Market发布其应用程序的更新时,必须增加此值,以便确定用户是否使用旧版本的应用程序并提供更新。

的versionName

versionName是一个包含常规“发行版本”的string,如其他桌面应用程序(如“1.4.5”或“3.7”)所示。

versionName只是一个“人类可读的”版本代码。

 PackageInfo pinfo = getPackageManager().getPackageInfo(getPackageName(), 0); int versionNumber = pinfo.versionCode; String versionName = pinfo.versionName; 

我发现的最简单和最好的答案是只导入您的BuildConfig

 import your.package.BuildConfig; 

然后就是

 String verName = BuildConfig.VERSION_NAME; int verCode = BuildConfig.VERSION_CODE; 

欢呼:)

如果您需要将其用于脚本编写(而不是编程),则可以使用以下命令:

  adb shell "pm dump com.example.your.package.name | grep \"versionCode\"" | awk '{print $1}' | awk -F '=' '{print $2}' 

int versionCode = BuildConfig.VERSION_CODE;

String versionName = BuildConfig.VERSION_NAME;

如果你正在使用eclipse,试试这个:

  PackageInfo packageInfo = this.getPackageManager().getPackageInfo(getPackageName(), 0); String version = packageInfo.versionName; 

在Android Studio中:

 int versionCode = BuildConfig.VERSION_CODE; 

确保你的模块级build.gradle文件中有豪宅版本代码

在NativeScript(与打字稿)可以这样做:

 import {Observable} from 'data/observable'; import * as applicationModule from 'application' export class AboutViewModel extends Observable { public version: string; constructor() { super(); let manager = applicationModule.android.context.getPackageManager(); let info = manager.getPackageInfo(applicationModule.android.context.getPackageName(), 0); this.version = info.versionName; } }