Android “之后如何将活动带到前台”;“家”;按钮已按下

Android “之后如何将活动带到前台”;“家”;按钮已按下,android,android-activity,foreground,android-homebutton,Android,Android Activity,Foreground,Android Homebutton,我读了很多帖子,但运气不好。我想要的是一个类似于NoLed应用程序的行为,当屏幕关闭时,我想重新启动它并显示一个低功耗屏幕。如果当我的应用程序在前台(用户可见)时屏幕关闭,一切正常,但如果我按下home(主页)按钮并锁定手机或等待屏幕关闭,我的低功耗屏幕将不可见,行为也不会受到关注。我尝试了这段代码,所有可能的标志混合在一起,单独。。。但是没有运气: Intent i=new Intent(Este,BajoConsumo.class); i.setFlags(Intent.FLAG_ACTIV

我读了很多帖子,但运气不好。我想要的是一个类似于NoLed应用程序的行为,当屏幕关闭时,我想重新启动它并显示一个低功耗屏幕。如果当我的应用程序在前台(用户可见)时屏幕关闭,一切正常,但如果我按下home(主页)按钮并锁定手机或等待屏幕关闭,我的低功耗屏幕将不可见,行为也不会受到关注。我尝试了这段代码,所有可能的标志混合在一起,单独。。。但是没有运气:

Intent i=new Intent(Este,BajoConsumo.class);
i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
//i.addFlags(...);
startActivity(i);

经过一些研究,我发现这样做的方法是打电话

Intent i=new Intent(this, BajoConsumo.class);
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(i);

从一个服务中,它将打开并聚焦新的活动,它将变得可见。

我想你说的黑屏是指屏幕关闭。你必须注册一个广播接收人是的,我说的黑屏是指屏幕关闭。我注册了一个广播接收器,问题是当屏幕关闭且用户正在使用另一个应用程序或已按下home按钮时,使低功耗屏幕可见。在通知栏中发出通知。如果侵入式应用程序超过了你的主屏幕,不让你做任何其他事情,你会怎么想。这就是为什么通知是最佳实践,如果用户想要与您的应用程序交互,则由用户决定。您是否使用了NoLED?这不是侵入性应用程序,当屏幕关闭且您有一个丢失的呼叫时,屏幕将打开(因为您已将应用程序配置为这样做),并向您显示例如有一个丢失的呼叫。