某些 Android 手机未在“设置”中打开“关于设备”页面?

Pan*_*eet 7 java android

运行以下代码时,某些 Android 手机不执行任何操作。它应该在“设置”中打开“关于设备”页面。

例如,我知道它对运行 Android 10的华为 Y9 Prime 2019 没有影响。

startActivity(new Intent(Settings.ACTION_DEVICE_INFO_SETTINGS));
Run Code Online (Sandbox Code Playgroud)

发生此问题时,预防此问题的最佳方法是什么?(在我的应用程序中,我打开此页面以要求用户在那里执行特定操作)

小智 3

用于PackageManager.resolveActivity()检查是否存在这样的Activity。如果返回null,则没有与 匹配的活动,Intent您必须以其他方式引导客户进行设置:

Intent intent = new Intent(Settings.ACTION_DEVICE_INFO_SETTINGS);
ResolveInfo resolveInfo = getPackageManager().resolveActivity(intent, 0);
if (resolveInfo == null) {
    // help customers by describing how to get to the device info settings

} else {
    startActivity(intent);
}
Run Code Online (Sandbox Code Playgroud)