JessYanCoding / MVPArms

⚔️ A common architecture for Android applications developing based on MVP, integrates many open source projects, to make your developing quicker and easier (一个整合了大量主流开源项目高度可配置化的 Android MVP 快速集成框架).
Apache License 2.0
10.28k stars 2.39k forks source link

在fragment中回到桌面时出现网络请求丢失问题 #327

Closed hegaojian closed 4 years ago

hegaojian commented 5 years ago

具体情况是这样的,在Fragment中发起网络请求时,迅速按home键回退到桌面,放在后台,再次返回App切换至前台时,之前的请求没有回调了,怀疑是不是被销毁了,但是在activity中如上操作却是没有问题能正常回调

hegaojian commented 5 years ago

已解决,在fragment请求中,绑定Disposable 时 要用 RxLifecycleUtils.bindUntilEvent(mRootView, FragmentEvent.DESTROY)方式绑定,因为之前看demo中activity是RxLifecycleUtils.bindToLifecycle(mRootView)绑定的,然后我在fragment也照例这么写了,一直没发现这个问题,建议群主说明一下,最好在demo中加一个 fragment,防止大家出现跟我一样的问题

ZQ7 commented 5 years ago

@hegaojian DESTROY解除绑定网络请求会有空指针的问题,因为在onDestroyView中已经解除了View的绑定

hegaojian commented 5 years ago

那在Fragment中请求该怎么绑定呢? @ZQ7

JessYanCoding commented 5 years ago

指定在 ondestroyView 之前的生命周期时,解除绑定