Перейти к содержанию
Fire Monkey от А до Я
  • 0

Как узнать версию приложения под Android?


Евгений Корепов

Вопрос

Как узнать версию приложения под Android?
 
Под Windows все просто, GetVersion(ParamStr(0)), а под Android не могу найти :(
 
function TFormMain.GetVersion(filename:String): string;
Var VerInfoSize: DWORD;
    VerInfo: Pointer;
    VerValueSize: DWORD;
    VerValue: PVSFixedFileInfo;
    Dummy: DWORD;
begin
  VerInfoSize := GetFileVersionInfoSize(PChar(filename), Dummy);
  GetMem(VerInfo, VerInfoSize);
  GetFileVersionInfo(PChar(filename), 0, VerInfoSize, VerInfo);
  VerQueryValue(VerInfo, '\', Pointer(VerValue), VerValueSize);
  with VerValue^ do
   begin
     Result := IntToStr(dwFileVersionMS shr 16);
     Result := Result + '.' + IntToStr(dwFileVersionMS and $FFFF);
     Result := Result + '.' + IntToStr(dwFileVersionLS shr 16);
     Result := Result + '.' + IntToStr(dwFileVersionLS and $FFFF);
   end;
  FreeMem(VerInfo, VerInfoSize);
end;

 

Ссылка на комментарий

Рекомендуемые сообщения

  • 1
  • Модераторы

Например, вот так:

{for Delphi XE6/XE7: Add to "uses" module "Androidapi.Helpers"}
uses
  Androidapi.JNI.JavaTypes, FMX.Helpers.Android,
  Androidapi.JNI.GraphicsContentViewText;


var
  PackageManager: JPackageManager;
  VersionPackage,PackageName: JString;
begin
  PackageManager := SharedActivity.getPackageManager;
  PackageName := SharedActivityContext.getPackageName;
   
  VersionPackage := PackageManager.getPackageInfo(PackageName, 0).versionName;
  Label1.Text := JStringToString(VersionPackage);

p.s. Для подобных вопросов, у меня в блоге есть страничка "JNI Code Snippet"

Ссылка на комментарий
  • 0

Сам спросил, сам ответил:

var
  PackageManager: JPackageManager;
  ApplicationInfo: JApplicationInfo;
  VersionPackage,PackageName, Name_APK: JString;
begin
// APK Version
   PackageManager := SharedActivity.getPackageManager;
   ApplicationInfo := SharedActivity.getApplicationInfo;
   PackageName := SharedActivityContext.getPackageName;
   VersionPackage := PackageManager.getPackageInfo(PackageName, 0).versionName;
   Name_APK := PackageManager.getApplicationLabel(ApplicationInfo).toString;

Изменено пользователем Hevard
Ссылка на комментарий

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...