Android のインテントアクションと開く画面 - その 3

[Android のアプリ情報を開く](https://qiita.com/CYonezawa/items/75d37b9065b1e2a4ceb1) で ACTION_APPLICATION_DETAILS_SETTINGS インテントアクションを使って、アプリ情報の設定画面を開くコードを書きました
他にも Android のインテントアクションはありますので、開く画面のスクリーンショットと、Delphi のコードと合わせて紹介します

[Android のインテントアクションと開く画面 - その 1](https://qiita.com/CYonezawa/items/0a5bbdb2523e736bef3a)
[Android のインテントアクションと開く画面 - その 2](https://qiita.com/CYonezawa/items/2141c329dd1dacca1052)

# Android Developer のドキュメント

詳しい情報は
https://developer.android.com/reference/android/provider/Settings.html
にあります

# ACTION_HOME_SETTINGS
ホーム設定画面
使用しているデバイスの OSバージョンに注意！ 5.0 以降ではないと使用できません。

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_HOME_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-10-45.png](https://qiita-image-store.s3.amazonaws.com/0/164551/c30b0f7b-4121-63a6-0c8d-b28e1fced268.png)


# ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS
電池の最適化設定画面
使用しているデバイスの OSバージョンに注意！ 6.0 以降ではないと使用できません。( このために OS のバージョン上げました... )

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_IGNORE_BATTERY_OPTIMIZATION_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_20180119-164409.png](https://qiita-image-store.s3.amazonaws.com/0/164551/fa4e68e2-525f-3fe0-cf44-5f48e7a3db23.png)

# ACTION_INPUT_METHOD_SETTINGS
言語と入力設定画面

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_INPUT_METHOD_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-10-57.png](https://qiita-image-store.s3.amazonaws.com/0/164551/166bcded-ca94-1d30-220d-9f2e1263f9ea.png)

# ACTION_INPUT_METHOD_SUBTYPE_SETTINGS
言語と入力に関する詳細設定画面

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_INPUT_METHOD_SUBTYPE_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-11-05.png](https://qiita-image-store.s3.amazonaws.com/0/164551/c2978464-02a3-63ba-f1dc-0e2fe287909f.png)

# ACTION_INTERNAL_STORAGE_SETTINGS
ストレージの設定画面

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_INTERNAL_STORAGE_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-11-13.png](https://qiita-image-store.s3.amazonaws.com/0/164551/da8e26d0-5fa1-6377-e837-28928b19df13.png)

# ACTION_LOCALE_SETTINGS
言語設定画面

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_LOCALE_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-11-20.png](https://qiita-image-store.s3.amazonaws.com/0/164551/fd422fae-8f65-f7f2-6978-3b9279effc6b.png)

# ACTION_LOCATION_SOURCE_SETTINGS
位置情報設定画面

```delphi
// uses に Androidapi.Helpers, Androidapi.JNI.APP, Androidapi.JNI.Provider
//         Androidapi.JNI.GrapicsContentViewText を追加します
// インテントは Intent: JIntent; で定義しています

// 目的のインテントアクションのインテントを作成します
Intent := TJIntent.JavaClass.init(TJSettings.JavaClass.ACTION_LOCATION_SOURCE_SETTINGS);

// startActivity を使ってインテントを飛ばします。
TAndroidHelper.Activity.startActivity(Intent);
```

![Screenshot_2018-01-19-15-11-26.png](https://qiita-image-store.s3.amazonaws.com/0/164551/e5db64fa-f1bf-3011-a358-2ddb624d7185.png)

その 4 に続く...