Как решить ошибку Gradle: не удалось применить плагин [id 'flow-gradle-plugin']

Многие из этих ответов имеют сходство, но все они не имеют самой важной части, которая находится в onActivityResult, проверьте, что data.getClipData имеет значение null перед проверкой data.getData

Код для вызова файла chooser:

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("image/*"); //allows any image file type. Change * to specific extension to limit it
//**These following line is the important one!
intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
startActivityForResult(Intent.createChooser(intent, "Select Picture"), SELECT_PICTURES); //SELECT_PICTURES is simply a global int used to check the calling intent in onActivityResult

Код для получения всех выбранных изображений:

@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if(requestCode == SELECT_PICTURES) {
        if(resultCode == Activity.RESULT_OK) {
            if(data.getClipData() != null) {
                int count = data.getClipData().getItemCount(); //evaluate the count before the for loop --- otherwise, the count is evaluated every loop.
                for(int i = 0; i < count; i++)  
                    Uri imageUri = data.getClipData().getItemAt(i).getUri();
                    //do something with the image (save it to some directory or whatever you need to do with it here) 
                }
            } else if(data.getData() != null) {
                String imagePath = data.getData().getPath();
                //do something with the image (save it to some directory or whatever you need to do with it here)
            }
        }
    }
}

Обратите внимание, что на Android-устройстве Android есть фотографии и галерея, доступные на некоторых устройствах. Фотографии позволяют выбирать несколько изображений. Галерея позволяет только по одному.

0
задан Rajkumar Natarajan 6 March 2019 в 01:11
поделиться