java.lang.NullPointerException: Attempt to get length of null array
frederikpyt opened this issue · 0 comments
frederikpyt commented
Logcat warn output:
2019-09-13 13:21:27.437 1155-1155/com.frederikmillingpytlick.container W/System.err: java.lang.NullPointerException: Attempt to get length of null array
2019-09-13 13:21:27.438 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.developer.filepicker.utils.Utility.prepareFileListEntries(Utility.java:29)
2019-09-13 13:21:27.439 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.developer.filepicker.view.FilePickerDialog.onStart(FilePickerDialog.java:212)
2019-09-13 13:21:27.439 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.app.Dialog.show(Dialog.java:323)
2019-09-13 13:21:27.440 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.developer.filepicker.view.FilePickerDialog.show(FilePickerDialog.java:389)
2019-09-13 13:21:27.440 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.frederikmillingpytlick.container.MainActivity.onMenuItemClick(MainActivity.java:201)
2019-09-13 13:21:27.441 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.widget.PopupMenu$1.onMenuItemSelected(PopupMenu.java:108)
2019-09-13 13:21:27.441 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:787)
2019-09-13 13:21:27.442 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:151)
2019-09-13 13:21:27.442 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:934)
2019-09-13 13:21:27.443 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:924)
2019-09-13 13:21:27.444 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.view.menu.MenuPopup.onItemClick(MenuPopup.java:128)
2019-09-13 13:21:27.444 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.widget.AdapterView.performItemClick(AdapterView.java:330)
2019-09-13 13:21:27.445 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.widget.AbsListView.performItemClick(AbsListView.java:1190)
2019-09-13 13:21:27.445 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.widget.AbsListView$PerformClick.run(AbsListView.java:3198)
2019-09-13 13:21:27.446 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.widget.AbsListView$3.run(AbsListView.java:4116)
2019-09-13 13:21:27.448 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.os.Handler.handleCallback(Handler.java:883)
2019-09-13 13:21:27.449 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.os.Handler.dispatchMessage(Handler.java:100)
2019-09-13 13:21:27.449 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.os.Looper.loop(Looper.java:214)
2019-09-13 13:21:27.454 1155-1155/com.frederikmillingpytlick.container W/System.err: at android.app.ActivityThread.main(ActivityThread.java:7356)
2019-09-13 13:21:27.454 1155-1155/com.frederikmillingpytlick.container W/System.err: at java.lang.reflect.Method.invoke(Native Method)
2019-09-13 13:21:27.455 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
2019-09-13 13:21:27.455 1155-1155/com.frederikmillingpytlick.container W/System.err: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)
My implementation:
case R.id.item1:
DialogProperties properties = new DialogProperties();
properties.selection_mode = DialogConfigs.MULTI_MODE;
properties.selection_type = DialogConfigs.FILE_SELECT;
properties.root = new File(Environment.DIRECTORY_PICTURES);
properties.error_dir = new File(Environment.DIRECTORY_DOWNLOADS);
properties.offset = new File(DialogConfigs.DEFAULT_DIR);
FilePickerDialog dialog = new FilePickerDialog(MainActivity.this, properties);
dialog.setTitle("Select a File");
dialog.setDialogSelectionListener(new DialogSelectionListener() {
@Override
public void onSelectedFilePaths(String[] files) {
//files is the array of the paths of files selected by the Application User.
}
});
dialog.show();
return true;
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String permissions[], @NonNull int[] grantResults) {
switch (requestCode) {
case FilePickerDialog.EXTERNAL_READ_PERMISSION_GRANT: {
if (grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {
if(dialog!=null)
{ //Show dialog if the read permission has been granted.
dialog.show();
}
}
else {
//Permission has not been granted. Notify the user.
Toast.makeText(MainActivity.this,"Permission is Required for getting list of files",Toast.LENGTH_SHORT).show();
}
}
}
}