ChiliLabs / ChiliPhotoPicker

Photo picker library for android. Let's you pick photos directly from files, or navigate to camera or gallery.
Apache License 2.0
405 stars 45 forks source link

2 issues crashing the app on some devices #29

Open ghost opened 3 years ago

ghost commented 3 years ago

Issue 1

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.zrtech.pixart/lv.chi.photopicker.utils.CameraActivity}: java.lang.IllegalStateException: intent.resolveActivity(packageManager) must not be null at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3611) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3775) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:233) at android.app.ActivityThread.main(ActivityThread.java:8010) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)

Caused by java.lang.IllegalStateException: intent.resolveActivity(packageManager) must not be null at lv.chi.photopicker.utils.CameraActivity.requestImageCapture(CameraActivity.java:28) at lv.chi.photopicker.utils.CameraActivity.onCreate(CameraActivity.java:8) at android.app.Activity.performCreate(Activity.java:8006) at android.app.Activity.performCreate(Activity.java:7990) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3584) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3775) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:233) at android.app.ActivityThread.main(ActivityThread.java:8010) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)


Issue 2

Fatal Exception: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.zrtech.pixart/com.zrtech.pixart.MainActivity}: java.lang.IllegalStateException: ImageLoader is null. You probably forget to call ChiliPhotoPicker.init() at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3611) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3775) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:233) at android.app.ActivityThread.main(ActivityThread.java:8010) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)

Caused by java.lang.IllegalStateException: ImageLoader is null. You probably forget to call ChiliPhotoPicker.init() at lv.chi.photopicker.PickerConfiguration.getImageLoader(PickerConfiguration.java:16) at lv.chi.photopicker.PhotoPickerFragment.onCreate(PhotoPickerFragment.java:16) at androidx.fragment.app.Fragment.performCreate(Fragment.java:1) at androidx.fragment.app.FragmentStateManager.create(FragmentStateManager.java:1) at androidx.fragment.app.FragmentStateManager.moveToExpectedState(FragmentStateManager.java:8) at androidx.fragment.app.FragmentStore.moveToExpectedState(FragmentStore.java:1) at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:1) at androidx.fragment.app.FragmentManager.dispatchStateChange(FragmentManager.java:3) at androidx.fragment.app.FragmentManager.dispatchCreate(FragmentManager.java:2) at androidx.fragment.app.FragmentController.dispatchCreate(FragmentController.java:1) at androidx.fragment.app.FragmentActivity.onCreate(FragmentActivity.java:1) at lv.chi.photopicker.PickerConfiguration.setUp(PickerConfiguration.java) at android.app.Activity.performCreate(Activity.java:8006) at android.app.Activity.performCreate(Activity.java:7990) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1329) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3584) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3775) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2246) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:233) at android.app.ActivityThread.main(ActivityThread.java:8010) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:631) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:978)

The second issue crashing the app say You probably forget to call ChiliPhotoPicker.init() but i am calling it inside onCreate on my main activity.

Any help would be appreciated.

And thanks for this awesome library.

kvertner commented 2 years ago

I was able to address the "Unable to start activity" crash on Android 11 and later devices by adding the following to the manifest. Hope it help!

<permission android:name="android.permission.QUERY_ALL_PACKAGES" />

<queries>
    <intent>
        <action android:name="android.intent.action.MAIN" />
    </intent>
</queries>