美文网首页
RxPermission不进入subscribe方法

RxPermission不进入subscribe方法

作者: BergHuang | 来源:发表于2019-04-17 11:08 被阅读0次

Des

new RxPermissions(mActivity)
       .request(Manifest.permission.READ_EXTERNAL_STORAGE, Manifest.permission.WRITE_EXTERNAL_STORAGE)
       .as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(this)))
       .subscribe(permission -> {
    doSomething();
}, e -> {log(e)})

试着加.doFinally(),当无权限时先进入了doFinally方法,说明本次请求权限直接结束了,实测log(e)没有异常,正常的应该进入subscribe再结束。

Cause

使用了 .as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(this)))
该方法可能默认绑定的生命周期事件是onPause(有待查看),当请求权限的弹出框出现时整个流程直接被dispose了。

Resolve

使用 .as(AutoDispose.autoDisposable(AndroidLifecycleScopeProvider.from(this, Lifecycle.Event.ON_DESTROY)))
添加了Lifecycle.Event.ON_DESTROY

相关文章

网友评论

      本文标题:RxPermission不进入subscribe方法

      本文链接:https://www.haomeiwen.com/subject/onegwqtx.html