私のアプリでは、いくつかのデータに基づいてプロットを描きます。プロットはスクロールとズームがあります。 MyMainFragment.onActivityCreated()でこの目的のために2つのビットマップを作成します。
if (bitmaps[0] != null)
{
return;
}
final int deviceWidth = getResources().getDisplayMetrics().widthPixels;
final int deviceHeight = getResources().getDisplayMetrics().heightPixels;
final int deviceMaxDim = Math.max(deviceHeight, deviceWidth);
bitmaps[0] = Bitmap.createBitmap(
deviceMaxDim * 2,
deviceMaxDim * 1,
Bitmap.Config.ARGB_8888);
bitmaps[1] = Bitmap.createBitmap(
bitmaps[0].getWidth(),
bitmaps[0].getHeight(),
bitmaps[0].getConfig());
私が使用する描画アルゴリズムのために2つのビットマップが必要であり、1だけではありません。 Asus Transformerでプログラムを実行すると、ピクセル単位のbmpサイズは1280 * 2 * 1280となり、バイトサイズは1280 * 2 * 1280 * 4になります。しかし、タブレットから普通のユーザーのように起動すると、2回ごとにクラッシュします。
Eclipseから実行可能なアプリケーションを起動したときに何が起こっているのですか?また、プログラムが正常に起動したときにクラッシュしないように同じ手順を実行できますか?それとも、OpenGLのような他の描画アルゴリズムを使うべきですか?
ありがとうございます。
http://code.google.com/p/android/issues/detail?id=10821が役立つ可能性があります。 – stacker
ありがとう、スタッカー!アンドロイドのバージョンは私のデバイスで4.0.3ですが、それは私の状況に非常に近いと思われます。 – RobinBobin