アクティビティがあります。これはsingleTaskです。
public class MyActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
System.out.printf("### MyAcitvity.onCreate: " + getIntent().getExtras());
}
@Override
protected void onResume() {
super.onResume();
System.out.println("### MyActivity.onResume: " + getIntent().getExtras());
}
public void toNext(View v) {
startActivity(new Intent(this, AaaActivity.class));
}
}
と:
<activity android:name=".MyActivity" android:launchMode="singleTask" />
いいえ、開始されていません。また、と呼ばれる別のアクティビティが開始されましAaaActivity
た。
public class AaaActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.aaa);
}
public void jumpToFirst(View v) {
Intent intent = new Intent(this, MyActivity.class);
intent.putExtra("aaa","bbb");
startActivity(intent);
}
}
jumpToFirst
後者には、メソッドをトリガーして最初のメソッドを開始し、データペアを渡すボタンがありますaaa=bbb
。MyActivity
であるためsingleTask
、新しいインスタンスは作成されず、代わりに既存のインスタンスに戻りMyActivity
ます。
私の質問は:通過する余分なデータをAaaActivity
で取得する方法はMyActivity
?
ログに記録したメソッドonCreate
とonResume
メソッドが表示されますが、nullの余分なデータが出力されます。
11-16 08:44:17.833: INFO/System.out(5171): ### MyAcitvity.onCreate: null
11-16 08:44:19.417: INFO/System.out(5171): ### MyActivity.onResume: null
11-16 08:44:26.041: INFO/System.out(5171): ### MyActivity.onResume: null
11-16 08:44:28.897: INFO/System.out(5171): ### MyActivity.onResume: null