0

私はしばらくの間市場に出回っているアプリを持っており、複数のデバイスでアプリをテストし、問題なく何度も再生しました。それから最近、私はそれをかなり不器用な低パフォーマンスのデバイスでテストし、最初の実行で恐ろしい「ビットマップサイズがVMバジェットを超えています」というエラーが発生しました。以前、まったく別のアプリでこのエラーが発生しましたが、これは非常に多くの繰り返し使用後にのみ発生しました。当時このエラーを調査したところ、この問題を解決するための最も重要な回答は、割り当て解除/ガベージコレクションの問題に関連していることがわかりました...しかし、おそらく、何もしなくてもこのエラーに遭遇する可能性があるはずですコーディングエラー。確かに、エラーは電力不足のデバイスを使用するだけで発生する可能性がありますか?...可能であれば、コーディングエラーとどのように区別しますか?

4

1 に答える 1

2

確かに、電力不足のデバイスを使用するだけでエラーが発生する可能性がありますか?

あまり。「パワー不足のデバイス」は、ホーム画面からわかるように、ビットマップを表示できます。問題は、解像度とビット深度の観点から、表示できる画像の大きさ、および一度にメモリに保持できるそのような画像の数です。getMemoryClass()onActivityManagerのようなものを使用してヒープの大きさを確認し、それに合わせて画像処理を調整する必要があります。

于 2013-02-18T17:39:07.817 に答える