Android 如何让活动从服务中脱颖而出

Android 如何让活动从服务中脱颖而出,android,android-activity,Android,Android Activity,我有两个活动1)FrmHome,我有senTtoback 2)屏幕锁,我想从服务中打开。当服务调用屏幕解锁时,活动在后台打开。当我点击应用程序时,我可以看到屏幕锁定活动。我希望屏幕锁定活动应该在顶部出现,而不点击应用程序 这是服务 和处理程序 public class FrmHome extends ActionBarActivity { BroadcastReceiver mybroadcast = new BroadcastReceiver() { //When Event is pub

我有两个活动1)FrmHome,我有senTtoback 2)屏幕锁,我想从服务中打开。当服务调用屏幕解锁时,活动在后台打开。当我点击应用程序时,我可以看到屏幕锁定活动。我希望屏幕锁定活动应该在顶部出现,而不点击应用程序

这是服务 和处理程序

public class FrmHome extends ActionBarActivity {

BroadcastReceiver mybroadcast = new BroadcastReceiver() {

//When Event is published, onReceive method is called
@Override
public void onReceive(Context context, Intent intent) {
    // TODO Auto-generated method stub
        Log.i("[BroadcastReceiver]", "MyReceiver");

        if(intent.getAction().equals(Intent.ACTION_USER_PRESENT)){
            Log.i("[BroadcastReceiver]", "Screen ON");

            Intent intent1 = new Intent(context, ScreenLock.class);
            intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_SINGLE_TOP);
            startActivity(intent1);



        }
        else if(intent.getAction().equals(Intent.ACTION_SCREEN_OFF)){
            Log.i("[BroadcastReceiver]", "Screen OFF");
        }

  }
   };
  @Override
   protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
    setContentView(R.layout.activity_frm_home);
    // registerReceiver(mybroadcast, new IntentFilter(Intent.ACTION_SCREEN_ON));
     registerReceiver(mybroadcast, new IntentFilter(Intent.ACTION_USER_PRESENT));
}
} 

我的新活动将在后台打开。当我点击应用程序时,我可以看到新的屏幕锁定活动。但是它不会自动出现在前台

您可以通过再次调用
startActivity
将活动带到前台。在正常情况下,这会启动一个新的活动实例,这可能是不可取的。您可以通过在
AndroidManifest.xml
(已解释)中设置活动的
launchMode
来控制这一点。例如,使用
singleTop
可以解决这个问题。这样,下次您的服务调用
startActivity
时,上一个实例将显示在顶部。

但我想打开另一个活动(屏幕锁),我已将我的主要活动(FrmHome)发回。抱歉,您解释的场景不清楚!您可以使用
startActivity
打开任何需要的活动。此函数可以从服务或活动中调用,默认情况下会创建活动的新实例并显示它。请参见我有两个活动1)FrmHome,我有senTtoback 2)屏幕锁,我想从服务中打开。当服务调用屏幕解锁时,活动在后台打开。当我点击应用程序时,我可以看到屏幕锁定活动。我希望屏幕锁定活动应该在顶部出现,而不点击应用程序