我有一个SingleTask应用程序,可以听取'测试'方案。
如果我点击按钮(参见代码),我重新启动自己,onNewIntent被调用给我'测试'意图(现在我可能通过推送片段对此作出反应)
现在如果我按下主页,然后打开应用程序启动器并重新输入我的应用程序,我希望调用onNewIntent但是有一个空意图,因为我不想重做我的动作(例如推送片段)。但onNewIntent给了我用于启动我的活动的最后一个意图,即“测试”意图。
我应该怎么做以防止推送相同的片段?没有使用我自己的ID,有没有一种很好的方式。
public class OnNewIntentTestActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Log.e("", "on create");
((Button) findViewById(R.id.button1)).setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
Log.e("", "Relaunch activity");
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("testing://hello")));
}
});
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Log.e("", "onNewIntent: " + (intent == null? "none" : (intent.getAction() + ":" + intent.getData())));
}
}
答案 0 :(得分:0)
setIntent(空);在onNewIntent
中获得所需的数据后