miguelpruivo / flutter_file_picker

File picker plugin for Flutter, compatible with mobile (iOS & Android), Web, Desktop (Mac, Linux, Windows) platforms with Flutter Go support.
MIT License
1.35k stars 676 forks source link

App crashes when I don't choose a file but go back instead #538

Closed jayrcodes closed 3 years ago

jayrcodes commented 3 years ago

Describe the bug When I try this:

FilePickerResult result = await FilePicker.platform.pickFiles();

And did not choose to select a file and go back instead, the app will crash

Issue details

  1. Platform Android
  2. Platform OS version 10

Steps to reproduce: Just try to do:

FilePickerResult result = await FilePicker.platform.pickFiles();

then dont choose a file and press back button

Error Log

I/FilePickerDelegate(21331): User cancelled the picker request
D/AndroidRuntime(21331): Shutting down VM
E/AndroidRuntime(21331): FATAL EXCEPTION: main
E/AndroidRuntime(21331): Process: com.example.searchie, PID: 21331
E/AndroidRuntime(21331): java.lang.RuntimeException: Failure delivering result ResultInfo{who=null, request=56181, result=0, data=null} to activity {com.example.searchie/com.example.screen_record.MainActivity}: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter data
E/AndroidRuntime(21331):    at android.app.ActivityThread.deliverResults(ActivityThread.java:4845)
E/AndroidRuntime(21331):    at android.app.ActivityThread.handleSendResult(ActivityThread.java:4886)
E/AndroidRuntime(21331):    at android.app.servertransaction.ActivityResultItem.execute(ActivityResultItem.java:51)
E/AndroidRuntime(21331):    at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
E/AndroidRuntime(21331):    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
E/AndroidRuntime(21331):    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2016)
E/AndroidRuntime(21331):    at android.os.Handler.dispatchMessage(Handler.java:107)
E/AndroidRuntime(21331):    at android.os.Looper.loop(Looper.java:214)
E/AndroidRuntime(21331):    at android.app.ActivityThread.main(ActivityThread.java:7356)
E/AndroidRuntime(21331):    at java.lang.reflect.Method.invoke(Native Method)
E/AndroidRuntime(21331):    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
E/AndroidRuntime(21331):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
E/AndroidRuntime(21331): Caused by: java.lang.IllegalArgumentException: Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter data
E/AndroidRuntime(21331):    at com.isvisoft.flutter_screen_recording.FlutterScreenRecordingPlugin.onActivityResult(Unknown Source:2)
E/AndroidRuntime(21331):    at io.flutter.embedding.engine.FlutterEngineConnectionRegistry$FlutterEngineActivityPluginBinding.onActivityResult(FlutterEngineConnectionRegistry.java:739)
E/AndroidRuntime(21331):    at io.flutter.embedding.engine.FlutterEngineConnectionRegistry.onActivityResult(FlutterEngineConnectionRegistry.java:426)
E/AndroidRuntime(21331):    at io.flutter.embedding.android.FlutterActivityAndFragmentDelegate.onActivityResult(FlutterActivityAndFragmentDelegate.java:652)
E/AndroidRuntime(21331):    at io.flutter.embedding.android.FlutterActivity.onActivityResult(FlutterActivity.java:618)
E/AndroidRuntime(21331):    at android.app.Activity.dispatchActivityResult(Activity.java:8110)
E/AndroidRuntime(21331):    at android.app.ActivityThread.deliverResults(ActivityThread.java:4838)
E/AndroidRuntime(21331):    ... 11 more
I/Process (21331): Sending signal. PID: 21331 SIG: 9
Lost connection to device.
Exited (sigterm)

Flutter Version details Flutter 1.24.0-10.2.pre • channel beta • https://github.com/flutter/flutter.git

miguelpruivo commented 3 years ago

@pbajr for some reason you’ve null types support but the package doesn’t support it yet. There’s an issue for it #510.

Thank you.