use*_*041 5 android battery android-intent
我正在寻找一种从 Android 应用程序打开电池设置屏幕的方法。
到目前为止,我发现了两个意图:
Intent.ACTION_POWER_USAGE_SUMMARY
Settings.ACTION_BATTERY_SAVER_SETTINGS
Run Code Online (Sandbox Code Playgroud)
但他们都没有打开这个屏幕。
我想知道是否有人知道这样的方式。对如此简单的事情的意图并不存在,这听起来很奇怪
Settings.ACTION_BATTERY_SAVER_SETTINGS “普通”Android 版本将显示您要显示的设置页面。
Intent.ACTION_POWER_USAGE_SUMMARY 将导致显示电池消耗的概览页面。
一些制造商(例如三星)在系统一上构建自己的实现,例如在此“电池”页面中。在三星设备上,您可以通过直接调用 SmartManager 接口来调用它。一个代码示例:
if (Build.MANUFACTURER == "samsung") {
val intent = Intent()
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.N) {
intent.component = ComponentName("com.samsung.android.lool", "com.samsung.android.sm.ui.battery.BatteryActivity")
} else if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {
intent.component = ComponentName("com.samsung.android.sm", "com.samsung.android.sm.ui.battery.BatteryActivity")
}
try {
activity?.startActivity(intent);
} catch (ex: ActivityNotFoundException) {
// Fallback to global settings
startActivity(Intent(Settings.ACTION_SETTINGS))
}
} else {
startActivity(Intent(Settings.ACTION_BATTERY_SAVER_SETTINGS))
}
Run Code Online (Sandbox Code Playgroud)
您可能还需要为华为或小米提供额外的保护套。
华为可以"com.huawei.systemmanager", "com.huawei.systemmanager.optimize.process.ProtectActivity"...
...以及基于 MIU 的 "com.miui.securitycenter", "com.miui.permcenter.autostart.AutoStartManagementActivity"
| 归档时间: |
|
| 查看次数: |
5276 次 |
| 最近记录: |