bundle.getString()和intent.getStringExtra()有什么区别?

时间:2016-08-10 02:59:49

标签: android

bundle.getString()intent.getStringExtra()之间的区别是什么?

我是Android新手,仍在学习,只是想知道两者之间的差异。

2 个答案:

答案 0 :(得分:6)

使用 Intent.getStringExtra() ,我们直接从intent对象获取Bundled字符串数据。

准确地说,我们可以通过 Bundle 对象获取意图中的字符串数据,如下所示:

// Call from received activity or component.
Bundle extras = getIntent().getExtras();
String value1 = extras.getString("OUR_TEXT_KEY");

因此,Bundle.getString()Intent.getExtras.getString()相同。 Bundle对象在Intent中。

请阅读Intent.getExtras()

答案 1 :(得分:3)

主要的区别在于,通过使用Intent,你可以防止getIntent().getExtras()的NullPointerException在没有额外的东西时可能返回null。而intent.getStringExtra()只会返回null作为默认值。

否则,Intent方法只是获取Bundle的快捷方式,然后从那里获取值。