Android L 省电模式 - startActivityforResult
Android L Battery Saver Mode - startActivityforResult
你们可能都知道 Android L 引入了一项称为节电模式的新功能。我想将用户从我的应用引导至“设置”页面中的特定 activity。我应该怎么做?
例如:为了在设置页面中启动 "Data Usage Activity",我这样做
Intent i = new Intent();
i.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings$DataUsageSummaryActivity"));
startActivityForResult(i, 0);
我怎样才能执行类似的操作以转到节电页面?
设置 -> 电池 ->(右上角的选项)-> 省电模式
谢谢
Intent battSaverIntent = new Intent();
battSaverIntent.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings$BatterySaverSettingsActivity"));
startActivityForResult(battSaverIntent, 0);
这对我有用。
但请注意,这个硬编码字符串不是来自 Android Settings,所以我想这个快捷方式可能会改变。
编辑:
现在,ACTION 已在 Android 设置中可见(自 API 级别 22)。
参见 here。
该操作现在称为 ACTION_BATTERY_SAVER_SETTINGS
但注意并不是所有手机都有这个设置,所以你需要注意一下。
你们可能都知道 Android L 引入了一项称为节电模式的新功能。我想将用户从我的应用引导至“设置”页面中的特定 activity。我应该怎么做?
例如:为了在设置页面中启动 "Data Usage Activity",我这样做
Intent i = new Intent();
i.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings$DataUsageSummaryActivity"));
startActivityForResult(i, 0);
我怎样才能执行类似的操作以转到节电页面? 设置 -> 电池 ->(右上角的选项)-> 省电模式
谢谢
Intent battSaverIntent = new Intent();
battSaverIntent.setComponent(new ComponentName("com.android.settings", "com.android.settings.Settings$BatterySaverSettingsActivity"));
startActivityForResult(battSaverIntent, 0);
这对我有用。
但请注意,这个硬编码字符串不是来自 Android Settings,所以我想这个快捷方式可能会改变。
编辑:
现在,ACTION 已在 Android 设置中可见(自 API 级别 22)。 参见 here。
该操作现在称为 ACTION_BATTERY_SAVER_SETTINGS
但注意并不是所有手机都有这个设置,所以你需要注意一下。