自作のアプリケーションからもAndroidのシステム全体の設定を変更する事ができます。
もちろんリファレンスに記載されている範囲で、ですけど。
変更できる内容をリファレンスで確認します。
-> Settings.System このあたりです
今回は、Galaxy Sの2.2.1以降で消えてしまった「スリープを無効にする(Stay awake)」という設定項目を変更するサンプルコードを載せます。
他の設定も同じ要領で変更可能だと思います。
パーミッションが必要になります。ご注意を。
android.permission.WRITE_SETTINGS
<Category : Java(Android)>
もちろんリファレンスに記載されている範囲で、ですけど。
変更できる内容をリファレンスで確認します。
-> Settings.System このあたりです
今回は、Galaxy Sの2.2.1以降で消えてしまった「スリープを無効にする(Stay awake)」という設定項目を変更するサンプルコードを載せます。
他の設定も同じ要領で変更可能だと思います。
パーミッションが必要になります。ご注意を。
android.permission.WRITE_SETTINGS
/** * 設定を変更する * @param stay */ private void changeStayAwakeSetting(boolean stay){ ContentResolver contentresolver = getContentResolver(); String setting_name = System.STAY_ON_WHILE_PLUGGED_IN; byte value = 0; if(stay){ value = BatteryManager.BATTERY_PLUGGED_AC | BatteryManager.BATTERY_PLUGGED_USB; }else{ value = 0; } android.provider.Settings.System.putInt(contentresolver, setting_name, value); } /** * 設定を取得する * @return */ private boolean getStayAwakeSetting(){ boolean ret = false; ContentResolver contentresolver = getContentResolver(); String setting_name = System.STAY_ON_WHILE_PLUGGED_IN; int value = 0; try { value = android.provider.Settings.System.getInt(contentresolver, setting_name); } catch (SettingNotFoundException e) { e.printStackTrace(); } if(value > 0){ ret = true; } return ret; }