LoginSignup
1
1

More than 5 years have passed since last update.

Android のアプリ情報を開く (Delphi)

Posted at

Android のアプリから、アプリ情報の画面を開くことができます。

詳しくはここを見てくださいませ。
https://developer.android.com/reference/android/provider/Settings.html

インテントで、ACTION_APPLICATION_DETAILS_SETTINGS と package: という文字列にアプリのパッケージ名を連結したものを渡すと開きます。
package: の文字列と連結するのは自分自身でも良いし、別のアプリのパッケージ名を指定すれば、そのアプリの設定画面を開くこともできます。

サンプルコード

unit Unit1;

interface

uses
  System.SysUtils, System.Types, System.UITypes, System.Classes, System.Variants,
  FMX.Types, FMX.Controls, FMX.Forms, FMX.Graphics, FMX.Dialogs, FMX.StdCtrls,
  FMX.Controls.Presentation,
  Androidapi.Jni, Androidapi.JNI.JavaTypes, Androidapi.Helpers, Androidapi.JNIBridge,
  Androidapi.JNI.Util, Androidapi.JNI.GraphicsContentViewText, Androidapi.Jni.Provider,
  Androidapi.Jni.Net, Androidapi.Jni.App
  ;

type
  TForm1 = class(TForm)
    ToolBar1: TToolBar;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { private 宣言 }
  public
    { public 宣言 }
  end;

var
  Form1: TForm1;

implementation

{$R *.fmx}

procedure TForm1.Button1Click(Sender: TObject);
var
  Intent: JIntent;  // インテント
  uri: string;      // URI package: + パッケージ名
begin
  // 自分自身のパッケージ名を取得するには TAndroidHelper.Context.getPackageName を使用します
  // IDE のメニューから、プロジェクト|オプションで、バージョン情報を開き、package キーに指定された名前が取得されます
  // デフォルトだと com.embarcadero.プロジェクト名です

  // ACTION_APPLICATION_DETAILS_SETTINGS を使う際には
  // package: の文字列の後に、取得したパッケージ名を連結したものを送る必要があります

  // パッケージ名ですが、デバイスにインストールされているアプリのパッケージ名を指定すると
  // 指定されたアプリのアプリ情報画面を出すことができます

  uri := 'package:' + JStringToString(TAndroidHelper.Context.getPackageName);
  Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_APPLICATION_DETAILS_SETTINGS, StrToJURI(uri));

  // startActivity を使ってインテントを飛ばして、アプリ情報の画面を開きます
  TAndroidHelper.Activity.startActivity(Intent);
end;

end.

実行してみる

Screenshot_2017-12-27-15-20-14.png
画面上のボタンを押すと

Screenshot_2017-12-27-15-20-20.png
アプリ情報の画面が開きました!

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1