tbruyelle/RxPermissions

Bug: requestEach callback do not contain each permission result

wangkai4556 opened this issue · 3 comments

Prerequisites

1.with appcompat 1.3.0 and above
2.with permission list paramters in a special order like below

READ_PHONE_STATE
CAMERA
ACCESS_FINE_LOCATION

must in this order

Issue description

requestEach callback do not contain each permission result.
because above appcompat 1.3.0 system do not callback permission result in the order that we provide by parameters,
so some publishSubject may send before subscribe.

Actual behavior

only contain CAMERA and READ_PHONE_STATE permission

Expected behavior

contain ACCESS_FINE_LOCATION and CAMERA and READ_PHONE_STATE permission

Steps To Reproduce

config gralde
implementation 'androidx.appcompat:appcompat:1.3.0'
implementation 'com.github.tbruyelle:rxpermissions:0.12'

config androidManifest.xml with permission

use rxpermission

RxPermission usage code

        RxPermissions(this).requestEach(
            Manifest.permission.READ_PHONE_STATE,
            Manifest.permission.CAMERA,
            Manifest.permission.ACCESS_FINE_LOCATION
        ).subscribe {
            Log.e("=====", it.toString()) 
        }

Lib Version

implementation 'com.github.tbruyelle:rxpermissions:0.12'
implementation 'androidx.appcompat:appcompat:1.3.0'

Screenshots
above appcompat 1.3.0
1

2

3

with appcompat 1.1.0

4

5

This have indeed the problem, have you solved it?

This have indeed the problem, have you solved it?
这个库看起来没有什么人在维护了,并且还有其他严重的bug,不建议继续使用。我自己实现了权限请求,你可以考虑使用andpermission