Closed zmunm closed 3 years ago
I implemented the wrappers myself.
import android.content.Context
import com.gun0912.tedpermission.PermissionBuilder
import com.gun0912.tedpermission.PermissionListener
import com.gun0912.tedpermission.TedPermissionBase
import com.gun0912.tedpermission.TedPermissionResult
import io.reactivex.rxjava3.core.Single
class TedRx3Permission : TedPermissionBase() {
companion object {
fun with(context: Context): Builder {
return Builder(context)
}
}
class Builder constructor(context: Context): PermissionBuilder<Builder>(context) {
fun request(): Single<TedPermissionResult> {
return Single.create { emitter ->
val listener: PermissionListener = object : PermissionListener {
override fun onPermissionGranted() {
emitter.onSuccess(TedPermissionResult(null))
}
override fun onPermissionDenied(deniedPermissions: List<String>) {
emitter.onSuccess(TedPermissionResult(deniedPermissions))
}
}
try {
setPermissionListener(listener)
checkPermissions()
} catch (exception: Exception) {
emitter.onError(exception)
}
}
}
}
}
@zmunm
Now you can use tedpermission-rx3
implementation 'io.github.ParkSangGwon:tedpermission-rx3:2.3.0'
https://github.com/ParkSangGwon/TedPermission#rxjava3
The RxJava docs mention the following:
Is there any plans for RxJava3?