如何在Android中以编程方式打开MIUI系统Activity

时间:2017-07-17 07:26:11

标签: android android-activity

enter image description here

是否可以在Android中以编程方式打开上述页面?

3 个答案:

答案 0 :(得分:4)

据我所知,没有隐含Intent来打开此Activity

要明确如何明确地执行此操作,请在设备上打开此菜单时查看Logcat输出以查看正在进行的操作。该流程应该由ActivityManager在某个时刻处理,因此您可以对其进行过滤。

您应该在日志中查找类似的内容:

  

I / ActivityManager:START u0   来自uid 1000的{cmp = com.miui.powerkeeper / .ui.PowerHideModeActivity}   显示0

获取此信息后,您只需创建一个合适的Intent,这样您就可以自己开始Activity

try {
    Intent intent = new Intent();
    intent.setClassName("com.miui.powerkeeper",
        "com.miui.powerkeeper.ui.PowerHideModeActivity");

    startActivity(intent);
} catch (ActivityNotFoundException anfe) {
    // this is not an MIUI device, or the component got moved/renamed
}

另外,您不应该以明确的方式打开操作系统组件。每当他们更改此组件的类名或包时,您的代码就会中断。

答案 1 :(得分:1)

您可以在小米手机(MIUI)上使用跳转至应用程序详细信息活动

{'name1': tag1, 'name2': tag2, .... 'nameN': tagN}

开发工具应用https://play.google.com/store/apps/details?id=cn.trinea.android.developertools

使用它

答案 2 :(得分:0)

MIUI 10。

对于当前应用:

try {
    Intent intent = new Intent();
    intent.setClassName("com.miui.powerkeeper",
    "com.miui.powerkeeper.ui.HiddenAppsConfigActivity");
    intent.putExtra("package_name", getPackageName());
    intent.putExtra("package_label", getText(R.string.app_name));
    startActivity(intent);
} catch (ActivityNotFoundException anfe) {
}