`Bundle savedInstanceState`的范围是什么?

时间:2017-10-08 20:42:51

标签: android bundle activity-lifecycle

在android中,我们使用onSaveInstanceState(Bundle outState)保留活动的实例状态。

现在为了正确实现这一点,必须为outState内存储的所有变量都设置唯一字符串键

我很好奇我需要多么独特才能制作这个字符串。

1)Bundle是否通过Android操作系统传播到所有活动的活动 - 因此所有键必须是应用程序&活动命名空间
(例如com.twitter.www.mobile.LOGIN_ACTIVITY.is_logged_in

2)Bundle是否仅由调用它的活动访问 - 因此所有密钥必须仅应用程序命名空间
(例如com.twitter.www.mobile.is_logged_in

1 个答案:

答案 0 :(得分:2)

特定FragmentActivity中的捆绑包仅对FragmentActivity唯一。它们不会在整个应用程序中传播。在密钥和变量中保持冗长/特定以避免混淆总是好的,但是您不必担心从不同的活动或片段访问错误的实例状态包或键值对。