我正在尝试引导我的用户进行电池优化活动,除了一些Android手机的三星手机外,它似乎最适用
Fatal Exception: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS }
此错误显示在OPPO F3手机中, 这就是我用它来启动它
Intent intent = new Intent("android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS");
startActivity(intent);
知道我应该在这些手机上发布什么内容吗?
感谢。
答案 0 :(得分:0)
在某些设备上,由于自定义固件,此活动可能不存在。
您可以使用此方法检查您的意图:
private static boolean isIntentAvailable(@NonNull Context context, @NonNull Intent intent) {
return context.getPackageManager().queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY).size() > 0;
}
当你做startActivity时,请执行以下操作:
Intent intent = new Intent("android.settings.IGNORE_BATTERY_OPTIMIZATION_SETTINGS");
if (isIntentAvailable(this, intent)) {
startActivity(intent);
} else {
// Do something else
}
或者抓住你的例外。 或者在问题设备上找到这些自定义活动并调用它们。