Получить версию приложения среды выполнения Delphi и информацию о сборке приложения для OSX в огненной обезьяне (FMX)

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

Тривиально для Windows, но не для Mac.

Надеюсь, вы можете помочь!

Эдвард

Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
1
0
279
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я использую этот код, который я написал. Просто позвоните:

osxNSBundle.BundleVersion()

Вот код:

uses
  Macapi.Foundation,
  Macapi.Helpers;

osxNSBundle = class
private
  class function MainBundle: NSBundle;
public
  class function BundlePath: string;
  class function BundleVersionStr: string;
  class procedure BundleVersion(var aMajor,aMinor,aBuild: integer);
end;

implementation

class function osxNSBundle.MainBundle: NSBundle;
begin
  result := TNSBundle.Wrap(TNSBundle.OCClass.mainBundle);
end;

class function osxNSBundle.BundlePath: string;
begin
  result := NSStrToStr(MainBundle.bundlePath);
end;

class function osxNSBundle.BundleVersionStr: string;
begin
  Result := NSStrToStr(TNSString.Wrap(MainBundle.objectForInfoDictionaryKey(StrToNSStr('CFBundleVersion'))));
end;

class procedure osxNSBundle.BundleVersion(var aMajor,aMinor,aBuild: integer);
var lStrArray: TArray<string>;
i: Integer;
begin
  aMajor := 0; aMinor := 0; aBuild := 0;
  lStrArray := BundleVersionStr.Split(['.']);
  if Length(lStrArray)>=3 then
  begin
    aMajor := lStrArray[0].ToInteger;
    aMinor := lStrArray[1].ToInteger;
    aBuild := lStrArray[2].ToInteger;
  end;
end;

Другие вопросы по теме