Я пытаюсь реализовать параметр share для png-изображений в своем приложении, но у меня возникает TransactionTooLargeException. Что я сделал: я добавил код для сжатия моего растрового изображения, но я все еще получаю исключение. Есть ли что-то, что я делаю неправильно?Share Option for PNG
public void sharePicture(MenuItem shareItem) {
MenuItemCompat.getActionProvider(shareItem);
Drawable drawable = itemImage.getDrawable();
Bitmap picture = ((BitmapDrawable) drawable).getBitmap();
ByteArrayOutputStream stream = new ByteArrayOutputStream();
picture.compress(Bitmap.CompressFormat.PNG, 100, stream);
final Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("image/png");
shareIntent.putExtra(Intent.EXTRA_STREAM, picture);
startActivity(Intent.createChooser(shareIntent, "Share image using"));
}
* Я добавил код для сжатия моего растрового изображения * ... нет, вы не так, как вы не можете ... вы сохраняете/сжимаете растровое изображение к потоку, который вы никогда не используете снова ... и растровое изображение всегда будет взять 'width * heigth * bytes_per_pixel' память – Selvin