编程语言
首页 > 编程语言> > java – onDestroy(),同时“等待”onActivityResult()

java – onDestroy(),同时“等待”onActivityResult()

作者:互联网

我有一个有两个活动的应用程序:“A”和“B”.

“A”使用startActivityForResult()来产生“B”,即它等待“B”.现在,假设“B”在前景中. Android系统可以破坏活动“A”而不会破坏“B”吗? (如果是,那么当“B”完成时,例如在用户输入之后,必须重新创建活动“A”并由Android系统再次放到前台,我需要记住并将“A”恢复到其早期的UI状态. )

请注意,我不是在讨论进程终止(这是不同的情况:如果进程被终止,所有活动都被终止,并且onDestroy()未被调用或无法保证被调用).问题仅仅是在等待子活动的结果时是否可以使用onDestroy().

解决方法:

如果活动A在B完成时被杀死,则可以保证

> A将重新创建.
> A将提供结果.

换句话说,A将在用户下次访问/需要时重新创建,并且此时将传递任何待处理结果(从B到A).

另请注意,这就是为什么必须通过带有整数请求代码的单个Activity回调而不是任意回调对象返回结果的原因.

标签:ondestroy,android,java
来源: https://codeday.me/bug/20190930/1836290.html