может ли кто-нибудь сказать мне, как получить версию applcation в android?
Как получить версию приложения
Ответ 1
На этой странице есть советы о том, как это сделать из java:
PackageManager manager = context.getPackageManager();
PackageInfo info = manager.getPackageInfo(
context.getPackageName(), 0);
String version = info.versionName;
Кроме того, эта ссылка содержит официальную информацию о том, как правильно настроить версию вашего приложения.
Ответ 2
Я использую Android Studio, я понял, что могу использовать один код строки, чтобы получить это.
/*version name*/
BuildConfig.VERSION_NAME
/*version code*/
BuildConfig.VERSION_CODE
Отредактировано:
Если вы используете другие библиотеки Android, убедитесь, что вы импортировали BuildConfig из своего пакета приложений. Это похоже на автоматически генерируемый класс R для идентификации ресурсов.
Ответ 3
Чтобы получить информацию о приложении:
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
}
Ответ 4
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;
}
}
}
Дополнительная информация об этой
Ответ 5
В вас (модуль: приложение) gradle укажите имя версии и код версии
defaultConfig {
applicationId "com.sing.smart"
minSdkVersion 16
targetSdkVersion 23
versionCode 1
versionName "1.1.0"
}
VersionCode
VersionCode - это целочисленное значение, используемое для простого различия между версиями приложений.
Разработчики приложений должны увеличивать это значение при выпуске обновлений своих приложений в Android Market, поэтому он может определить, используют ли пользователи старую версию приложения и предлагают им обновить его.
versionName
ВерсияName - это строка, содержащая обычную "версию выпуска", как показано в других настольных приложениях, таких как "1.4.5" или "3.7".
ВерсияName - это просто "читаемый человеком" код версии.
PackageInfo pinfo = getPackageManager().getPackageInfo(getPackageName(), 0);
int versionNumber = pinfo.versionCode;
String versionName = pinfo.versionName;
Ответ 6
Самый простой и лучший ответ, который я нашел, - это просто импортировать BuildConfig
import your.package.BuildConfig;
тогда просто
String verName = BuildConfig.VERSION_NAME;
int verCode = BuildConfig.VERSION_CODE;
cheers:)
Ответ 7
Если вам это нужно для сценариев (не для программирования), вы можете использовать эту команду:
adb shell "pm dump com.example.your.package.name | grep \"versionCode\"" | awk '{print $1}' | awk -F '=' '{print $2}'
Ответ 8
int versionCode = BuildConfig.VERSION_CODE;
Строка versionName = BuildConfig.VERSION_NAME;
Ответ 9
Если вы используете eclipse, попробуйте это:
PackageInfo packageInfo = this.getPackageManager().getPackageInfo(getPackageName(), 0);
String version = packageInfo.versionName;
В Android Studio:
int versionCode = BuildConfig.VERSION_CODE;
убедитесь, что у вас есть код версии особняка в файле build.gradle на уровне модуля.
Ответ 10
В Nativescript (с помощью Typescript) можно сделать так:
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;
}
}