Я использую этот код, чтобы поделиться коллекцией изображений:
final ArrayList<Uri> imageUris = new ArrayList<>();
for (final ImageBean selectedImage : ImageBean.getSelectedImageBeans(imagesBeans)) {
final File imageFile = new File(selectedImage.getPathToImage().getPath());
final Uri contentProviderUri = FileProvider.getUriForFile(context, BuildConfig.APPLICATION_ID + ".provider", imageFile);
imageUris.add(contentProviderUri);
}
final Intent shareIntent = new Intent();
shareIntent.setType("image/*");
if (imageUris.size() == 1) {
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, imageUris.get(0));
} else {
shareIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
shareIntent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, imageUris);
}
context.startActivity(Intent.createChooser(shareIntent, context.getResources().getText(R.string.share_images_intent)));
В основном меня интересует загрузка в Google Фото.Это прекрасно работает для изображения размером 600 КБ, но не работает для изображения размером 5 МБ (24MP от моей камеры).Итак, очевидно, что есть ограничение по размеру, но так как ошибка возникает в активности Google Фото, я не могу ее отладить (или я недостаточно хорошо знаю Android Studio о том, как это сделать).
Естьесть ли способ изменить свое намерение, чтобы я мог загрузить несколько 24MP изображений, или это ограничение по размеру, заданное, и мне нужно обойти его (например, путем реализации API Google Photos)?