Android 在使用意图共享后,片段未恢复其活动
上下文: 我有一个应用程序使用Android 在使用意图共享后,片段未恢复其活动,android,android-intent,android-activity,android-fragments,intentfilter,Android,Android Intent,Android Activity,Android Fragments,Intentfilter,上下文: 我有一个应用程序使用活动和片段。 我暂停它以访问另一个,如谷歌翻译。在GTranslate中,我使用shareIntent过程,通过Intent过滤器将文本数据发送到我的应用程序。 即使第一个应用程序在后台,它当前的活动也会被重新创建 问题是与所提到的活动相关联的片段也没有重新创建,更恼人的是没有恢复(从未调用片段的onResume方法) 问题: 为什么在通过应用程序使用intent时,fragments不遵循其父活动的生命周期,并且至少不会恢复? 有没有办法绕过这个问题 还是我完全错
活动
和片段
。
我暂停它以访问另一个,如谷歌翻译。在GTranslate中,我使用shareIntent
过程,通过Intent过滤器将文本数据发送到我的应用程序。
即使第一个应用程序在后台,它当前的活动也会被重新创建
问题是与所提到的活动
相关联的片段
也没有重新创建,更恼人的是没有恢复(从未调用片段的onResume
方法)
问题:
为什么在通过应用程序使用intent
时,fragments
不遵循其父活动的生命周期,并且至少不会恢复?
有没有办法绕过这个问题
还是我完全错了?使用片段活动而不是活动
发件人:
将onResume()分派给片段。请注意,为了更好地相互操作
对于较旧版本的平台,在此调用时
附加到活动的片段不会恢复。这意味着
在某些情况下,以前的状态可能仍然保存,不允许
修改状态的片段事务。正确互动
如果片段处于正确的状态,则应该重写
{@link#onResumeFragments()
因此,在FragmentActivity中操作片段的正确位置是重写onResumeFragments方法,如下所示:
protected void onResumeFragments(){
super.onResumeFragments();
// YOUR STUFF IS HERE
}
即使在onResumeFragments
中操作片段,也不起作用。您正在做的一些代码片段会很有帮助。在重新阅读您的帖子后,听起来您正在使用Google Translate共享意图打开应用程序的另一个实例,反之则使用类似于onActivityResult()的东西,bundle等,从GTranslate接收数据,因此您的原始应用程序不会接收数据,并且原始片段也会停止。