虽然MyClient目前处于后台,但MyService和MyClient都在运行.如果MyService通过以下方式向MyClient发送Intent: Intent i = new Intent(MYService.this, MyClient.class);i.setAction("com.test.MyService.ACTION_SERVICE");i.setFla
Intent i = new Intent(MYService.this, MyClient.class); i.setAction("com.test.MyService.ACTION_SERVICE"); i.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(i);
如何在MyClient中获取此Intent?运行此代码会触发MyClient中的onResume(),但由于它已经在运行,因此调用getIntent()会返回最初创建MyClient的Intent,它始终是android.intent.action.MAIN
覆盖onNewIntent()并确保标记intent,以便它不会启动活动的新实例