-1
내 앱에서 png 그림에 대한 공유 옵션을 구현하려고하는데 TransactionTooLargeException이 발생했습니다. 내가 한 일은 : 비트 맵을 압축하는 코드를 추가했지만 여전히 예외가 발생합니다. 내가 잘못하고있는 것이 있습니까?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"));
}
* 내 비트 맵을 압축하는 코드를 추가했습니다. * ... 아니, 할 수있는 것처럼 ... 비트 맵을 다시 사용하지 않는 스트림에 저장/압축합니다. 항상 비트 맵을 사용합니다. '너비 * heigth * bytes_per_pixel' 메모리를 가져라. – Selvin