fishwjy / MultiType-FilePicker

This is a light Android file picker library.
Apache License 2.0
1.4k stars 250 forks source link

Crash when shared storage not available #70

Open markkorput opened 3 years ago

markkorput commented 3 years ago

Looks like VideoPickActivity does not check if getExternalCacheDir() returns null.

I'm using a nativescript package that eventually uses MultiType-FilePicker for the android native implementation. See also this comment for more information.

Errlog:

System.err: An uncaught Exception occurred on "main" thread.
System.err: Unable to start activity ComponentInfo{<APP_ID>/com.vincent.filepicker.activity.VideoPickActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getAbsolutePath()' on a null object reference
System.err:
System.err: StackTrace:
System.err: java.lang.RuntimeException: Unable to start activity ComponentInfo{<APP_ID>/com.vincent.filepicker.activity.VideoPickActivity}: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getAbsolutePath()' on a null object reference
System.err:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3449)
System.err:     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3601)
System.err:     at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:85)
System.err:     at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
System.err:     at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
System.err:     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2066)
System.err:     at android.os.Handler.dispatchMessage(Handler.java:106)
System.err:     at android.os.Looper.loop(Looper.java:223)
System.err:     at android.app.ActivityThread.main(ActivityThread.java:7656)
System.err:     at java.lang.reflect.Method.invoke(Native Method)
System.err:     at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
System.err:     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
System.err: Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String java.io.File.getAbsolutePath()' on a null object reference
System.err:     at com.vincent.filepicker.activity.VideoPickActivity.initView(VideoPickActivity.java:108)
System.err:     at com.vincent.filepicker.activity.VideoPickActivity.onCreate(VideoPickActivity.java:78)
System.err:     at android.app.Activity.performCreate(Activity.java:7995)
System.err:     at android.app.Activity.performCreate(Activity.java:7979)
System.err:     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1309)
System.err:     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3422)
System.err:     ... 11 more