0

私のアプリケーションでは、非常に多くのアセットを使用してレンダリングしています。これにより、アプリケーションがクラッシュし、メモリが残っていないことを示す例外が発生しました (バイト配列の割り当て時)。meminfo を使用すると、プロセスが約 40 MB のメモリを使用していることがわかりましたが、これは私の計算によれば正しいものです (したがって、コードに過剰なメモリ割り当てが隠されているわけではありません)。

私のシステムの総メモリ使用量は 300MB です。しかし、私のタブレットは 1 GB のメモリをサポートしていますが、300 MB の使用量でなぜ例外がスローされるのだろうかと思います。変更が必要なプロセスごとの制限はありますか? または、アンドロイドのメモリ管理について他に欠けているものはありますか?

4

1 に答える 1

2

これを application タグの androidManifest に追加します

android:largeHeap="true"

物事を機能させるためですが、これはより多くのメモリを消費するため、より多くの gc 呼び出しが発生します

于 2013-09-27T11:30:41.273 に答える