0

バンドルを使用して、あるアプリケーションから別のアプリケーションにビットマップを送信しています。そして、別のアプリケーションで使用するために、バンドルからビットマップを取得します。 この場所では、バンドルの特定の使用が必要でした。

そして、それを読むと、OUT OF MEMORY EXCEPTIONが発生します。

bitmap = (Bitmap)receivedmsg.getData().getParcelable("myobject");

助言がありますか ?

4

1 に答える 1

1

それはそれが言うことを意味します。シリアル化したイメージが大きすぎて、他のアプリでメモリに読み戻すことができません。最速の修正は、M Mohsin Naeem がほのめかしていることです。画像を小さくする必要があります。画像を送信するアプリで行います。たとえば、そのアプリがファイルから読み取っている場合、画像をより小さなサイズにダウンサンプリングするように設定できます。

また、この方法で画像を送信する必要があるかどうか、または SD カードに保存してからメモリに読み込まずに処理できるかどうかも検討してください。

于 2012-07-06T08:33:04.043 に答える