Delphi XE5でAndroidのシステム情報を取得する

android.os.BuildでAndoroidのシステム情報を取得できます。
Delphi XE5では、Androidapi.JNI.Osユニットにandroid.os.BuildがTJBuildとして移植されていました。
このクラスを使ってシステム情報を取得できます。

各項目の説明文は「Androidのシステム情報を取得する « Tech Booster」を参考にしました。

uses
  Androidapi.JNI.Os,  //TJBuild
  Androidapi.JNI.JavaTypes; // StringToJString

procedure TForm1.FormCreate(Sender: TObject);
begin
  Memo1.Lines.Add(Format('%s:%s', ['ボード(基盤)名称',
    JStringToString(TJBuild.JavaClass.BOARD)]));
  Memo1.Lines.Add(Format('%s:%s', ['ブートローダのバージョン番号',
    JStringToString(TJBuild.JavaClass.BOOTLOADER)]));
  Memo1.Lines.Add(Format('%s:%s', ['ブランド名',
    JStringToString(TJBuild.JavaClass.BRAND)]));
  Memo1.Lines.Add(Format('%s:%s', ['ネイティブコードの命令セット',
    JStringToString(TJBuild.JavaClass.CPU_ABI)]));
  Memo1.Lines.Add(Format('%s:%s', ['ネイティブコードの第2命令セット',
    JStringToString(TJBuild.JavaClass.CPU_ABI2)]));
  Memo1.Lines.Add(Format('%s:%s', ['デバイス名',
    JStringToString(TJBuild.JavaClass.DEVICE)]));
  Memo1.Lines.Add(Format('%s:%s', ['ユーザへ表示するビルドID',
    JStringToString(TJBuild.JavaClass.DISPLAY)]));
  Memo1.Lines.Add(Format('%s:%s', ['一意にビルドを識別することができる識別子',
    JStringToString(TJBuild.JavaClass.FINGERPRINT)]));
  Memo1.Lines.Add(Format('%s:%s', ['ハードウェア名',
    JStringToString(TJBuild.JavaClass.HARDWARE)]));
  Memo1.Lines.Add(Format('%s:%s', ['ホスト名',
    JStringToString(TJBuild.JavaClass.HOST)]));
  Memo1.Lines.Add(Format('%s:%s', ['変更番号もしくは一意なラベル',
    JStringToString(TJBuild.JavaClass.ID)]));
  Memo1.Lines.Add(Format('%s:%s', ['製造者名',
    JStringToString(TJBuild.JavaClass.MANUFACTURER)]));
  Memo1.Lines.Add(Format('%s:%s', ['最終的にユーザへ表示するモデル名',
    JStringToString(TJBuild.JavaClass.MODEL)]));
  Memo1.Lines.Add(Format('%s:%s', ['製品名',
    JStringToString(TJBuild.JavaClass.PRODUCT)]));
  Memo1.Lines.Add(Format('%s:%s', ['無線ファームウェアのバージョン',
    JStringToString(TJBuild.JavaClass.RADIO)]));
  Memo1.Lines.Add(Format('%s:%s', ['ビルドのタグ名',
    JStringToString(TJBuild.JavaClass.TAGS)]));
  Memo1.Lines.Add(Format('%s:%d', ['システム時刻', TJBuild.JavaClass.TIME]));
  Memo1.Lines.Add(Format('%s:%s', ['ビルドタイプ。userやengなど',
    JStringToString(TJBuild.JavaClass.&TYPE)]));
  Memo1.Lines.Add(Format('%s:%s', ['情報不明時の識別子',
    JStringToString(TJBuild.JavaClass.UNKNOWN)]));
  Memo1.Lines.Add(Format('%s:%s', ['ユーザ情報',
    JStringToString(TJBuild.JavaClass.USER)]));
  Memo1.Lines.Add(Format('%s:%s', ['開発コードネーム',
    JStringToString(TJBuild_VERSION.JavaClass.CODENAME)]));
  Memo1.Lines.Add(Format('%s:%s', ['ソースコード管理番号',
    JStringToString(TJBuild_VERSION.JavaClass.INCREMENTAL)]));
  Memo1.Lines.Add(Format('%s:%s', ['ユーザーに表示するバージョン番号',
    JStringToString(TJBuild_VERSION.JavaClass.RELEASE)]));
  Memo1.Lines.Add(Format('%s:%d', ['フレームワークのバージョン情報',
    TJBuild_VERSION.JavaClass.SDK_INT]));
end;

Delphi XE5でAndroidのシステム情報を取得する

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください