Java Android中getIntent()和new Intent()的区别是什么?
我确实喜欢这个 第一条路Java Android中getIntent()和new Intent()的区别是什么?,java,android,android-studio,Java,Android,Android Studio,我确实喜欢这个 第一条路 Intent intent = new Intent(); intent.putExtra("isLoggedIn",true); setResult(RESULT_OK,intent); 第二条路 Intent intent = getIntent(); intent.putExtra("isLoggedIn",true); setResult(RESULT_OK,intent); 两者都可以给出相同的结果。我想知道这两者之间的实际差异,在活动的上下文中,getI
Intent intent = new Intent();
intent.putExtra("isLoggedIn",true);
setResult(RESULT_OK,intent);
第二条路
Intent intent = getIntent();
intent.putExtra("isLoggedIn",true);
setResult(RESULT_OK,intent);
两者都可以给出相同的结果。我想知道这两者之间的实际差异,在
活动的上下文中,getIntent()
将返回最初发送到活动的Intent
。您给出的示例可能与此相同,但如果您将Intent
传递给另一个活动
或将其发回,则应避免使用getIntent()
例如:
如果我以以下方式开始活动:
Intent intent = new Intent(context, MainActivity.class);
intent.putExtra("key", "test");
startActivity(intent);
然后在我的活动课上:
Intent intent = getIntent();
String value = intent.getString("key"); // value will = "test".
所以现在考虑一下,如果你有第二个活动,我从主活动开始使用GETIMUTE();p>
然后在第二个活动中,我可以同时访问key和isLoggedIn
Intent intent = getIntent();
String value = intent.getString("key"); // value will = "test".
boolean testIsLoggedIn = intent.getBooleanExtra("isLoggedIn",true);
因此,一般来说,使用getIntent开始进一步的活动不是一个好的做法。在活动的上下文中,getIntent()
将返回最初发送到活动的意图。您给出的示例可能与此相同,但如果您将Intent
传递给另一个活动
或将其发回,则应避免使用getIntent()
例如:
如果我以以下方式开始活动:
Intent intent = new Intent(context, MainActivity.class);
intent.putExtra("key", "test");
startActivity(intent);
然后在我的活动课上:
Intent intent = getIntent();
String value = intent.getString("key"); // value will = "test".
所以现在考虑一下,如果你有第二个活动,我从主活动开始使用GETIMUTE();p>
然后在第二个活动中,我可以同时访问key和isLoggedIn
Intent intent = getIntent();
String value = intent.getString("key"); // value will = "test".
boolean testIsLoggedIn = intent.getBooleanExtra("isLoggedIn",true);
因此,一般来说,使用getIntent开始进一步的活动不是一个好的做法。getIntent()的文档告诉您什么?getIntent()的文档告诉您什么?