Skip to content

RxImagePicker with Camera crashes #63

Open
@imayank91

Description

@imayank91

Request

        RxImagePicker.with(fragmentManager!!).requestImage(Sources.CAMERA).subscribe {
            CropImage.activity(it).start(activity!!)

Description
No camera permission has been added to the manifest.

I am using kotlin with androidx Fragment

Error

  io.reactivex.exceptions.OnErrorNotImplementedException: The exception was not handled due to missing onError handler in the subscribe() method call. Further reading: https://github.com/ReactiveX/RxJava/wiki/Error-Handling | Permission Denial: starting Intent { act=android.media.action.IMAGE_CAPTURE flg=0x3 cmp=com.android.camera2/com.android.camera.CaptureActivity clip={text/uri-list U:content://media/external/images/media/130} (has extras) } from ProcessRecord{832fd42 28288:com.app.spectrum/u0a135} (pid=28288, uid=10135) with revoked permission android.permission.CAMERA
        at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:704)
        at io.reactivex.internal.functions.Functions$OnErrorMissingConsumer.accept(Functions.java:701)
        at io.reactivex.internal.observers.LambdaObserver.onError(LambdaObserver.java:77)
        at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:67)
        at io.reactivex.subjects.PublishSubject$PublishDisposable.onNext(PublishSubject.java:308)
        at io.reactivex.subjects.PublishSubject.onNext(PublishSubject.java:228)
        at com.mlsdev.rximagepicker.RxImagePicker.onAttach(RxImagePicker.kt:76)
        at androidx.fragment.app.Fragment.performAttach(Fragment.java:2582)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:821)
        at androidx.fragment.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManagerImpl.java:1228)
        at androidx.fragment.app.FragmentManagerImpl.moveToState(FragmentManagerImpl.java:1293)
        at androidx.fragment.app.BackStackRecord.executeOps(BackStackRecord.java:439)
        at androidx.fragment.app.FragmentManagerImpl.executeOps(FragmentManagerImpl.java:2066)
        at androidx.fragment.app.FragmentManagerImpl.executeOpsTogether(FragmentManagerImpl.java:1856)
        at androidx.fragment.app.FragmentManagerImpl.removeRedundantOperationsAndExecute(FragmentManagerImpl.java:1811)
        at androidx.fragment.app.FragmentManagerImpl.execPendingActions(FragmentManagerImpl.java:1717)
        at androidx.fragment.app.FragmentManagerImpl$2.run(FragmentManagerImpl.java:150)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6669)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.SecurityException: Permission Denial: starting Intent { act=android.media.action.IMAGE_CAPTURE flg=0x3 cmp=com.android.camera2/com.android.camera.CaptureActivity clip={text/uri-list U:content://media/external/images/media/130} (has extras) } from ProcessRecord{832fd42 28288:com.app.spectrum/u0a135} (pid=28288, uid=10135) with revoked permission android.permission.CAMERA
        at android.os.Parcel.createException(Parcel.java:1942)
        at android.os.Parcel.readException(Parcel.java:1910)
        at android.os.Parcel.readException(Parcel.java:1860)
        at android.app.IActivityManager$Stub$Proxy.startActivity(IActivityManager.java:3755)
        at android.app.Instrumentation.execStartActivity(Instrumentation.java:1669)
        at android.app.Activity.startActivityForResult(Activity.java:4586)
        at androidx.fragment.app.FragmentActivity.startActivityForResult(FragmentActivity.java:676)
        at androidx.core.app.ActivityCompat.startActivityForResult(ActivityCompat.java:234)
        at androidx.fragment.app.FragmentActivity.startActivityFromFragment(FragmentActivity.java:796)
        at androidx.fragment.app.FragmentActivity$HostCallbacks.onStartActivityFromFragment(FragmentActivity.java:933)
        at androidx.fragment.app.Fragment.startActivityForResult(Fragment.java:1210)
        at androidx.fragment.app.Fragment.startActivityForResult(Fragment.java:1198)
        at com.mlsdev.rximagepicker.RxImagePicker.pickImage(RxImagePicker.kt:161)
2019-07-02 16:53:28.157 28288-28288/com.app.spectrum E/AndroidRuntime:     at com.mlsdev.rximagepicker.RxImagePicker.access$pickImage(RxImagePicker.kt:23)
        at com.mlsdev.rximagepicker.RxImagePicker$requestPickImage$1.accept(RxImagePicker.kt:125)
        at com.mlsdev.rximagepicker.RxImagePicker$requestPickImage$1.accept(RxImagePicker.kt:23)
        at io.reactivex.internal.observers.LambdaObserver.onNext(LambdaObserver.java:63)
        	... 20 more
     Caused by: android.os.RemoteException: Remote stack trace:
        at com.android.server.am.ActivityStackSupervisor.checkStartAnyActivityPermission(ActivityStackSupervisor.java:1788)
        at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:717)
        at com.android.server.am.ActivityStarter.startActivity(ActivityStarter.java:544)
        at com.android.server.am.ActivityStarter.startActivityMayWait(ActivityStarter.java:1099)
        at com.android.server.am.ActivityStarter.execute(ActivityStarter.java:486)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions