首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StartActivityForResult()可能崩溃?

StartActivityForResult()可能崩溃?
EN

Stack Overflow用户
提问于 2011-08-20 01:08:39
回答 1查看 1.2K关注 0票数 3

我有一个简短的问题,我希望其他人有一个快速的答案:如果您启动活动A,然后使用startActivityForResult()启动活动B,那么当B完成并返回A可能已被GC控制的值(意图)时,是否存在这样的可能性?

我在某个地方读到这种情况可能发生,因此您不应该使用Intent.putExtras()将重要信息传回,因为它可能会丢失?相反,人们建议在sharedPreferences中保存状态,并在从A到B,然后从B返回到A时,只使用startActivity()

由于这个原因,我很想避免对我正在进行的项目进行重新编码,但是如果这是一个问题,我显然希望在发布之前处理它。

然而,如果这是可能的话,你就不能把A中的一些静态引用放在B中,从而进行硬引用,而不允许GC?

谢谢你们的帮助!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-08-20 12:59:23

如果A被摧毁了,它就会被重建。来自Android指南中的活动文件

受保护的void onActivityResult (int requestCode,int resultCode,意图数据) 。。当您的活动重新启动onResume() 时,您将在紧接()之前收到这个调用。

这意味着将正常重新创建活动A(执行onCreate()、onStart()和onActivityResult(),如在活动生命周期中所述),并且您在活动B中设置的结果意图将被传递。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7128883

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档