首页 > 解决方案 > 启动活动并保持设备唤醒

问题描述

我正在尝试从我的 MainActivity 启动一个 Intent 并保持设备唤醒。我尝试使用该标志FLAG_KEEP_SCREEN_ON,但它确实有效。这是我的代码:

Intent mIntent = new Intent();
mIntent.addFlags(FLAG_KEEP_SCREEN_ON);
mIntent.setAction("android.intent.action.VIEW");
mIntent.addCategory("android.intent.category.BROWSABLE");
mIntent.setComponent(new ComponentName("com.merriamwebster","com.merriamwebster.dictionary.activity.dictionary.DictionaryActivity"));
startActivity(mIntent);

PS:相关意图是启动Dictionary-Merriam-Webster我手机中安装的应用程序。

标签: androidandroid-intentandroid-activityscreen

解决方案


您正在使用公寓的意图。虽然它是一个Window标志而不是..

您可以使用以下方法通过传递 a 来唤醒您的设备true,然后传递false将其关闭。

private void keepScreenOn(boolean enabled) {
    if (enabled)
        getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    else
        getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}

推荐阅读