我在生產中有一個應用程序,並在Galaxy設備上發生大量崩潰。Galaxy設備上的圖像裁剪OutOfMemoryError
堆棧跟蹤:
java.lang.OutOfMemoryError在 android.graphics.Bitmap.nativeCreate(本機方法)在 android.graphics.Bitmap.createBitmap(Bitmap.java:669)在 android.graphics.Bitmap.createBitmap(Bitmap.java:604)at android.graphics.Bitmap.createBitmap(Bitmap.java:530)at com.edmodo.cropper.CropImageView.getCroppedImage(CropImageView.java:357) at com.myapp.app.MyPhotoActivity $ 3.onClick(MyPhotoActivity.java:308) at an droid.view.View.performClick(View.java:4191)at android.view.View $ PerformClick.run(View.java:17229)at android.os.Handler.handleCallback(Handler.java:615)at android.os.Handler.dispatchMessage(Handler.java:92)在 android.os.Looper.loop(Looper.java:137)在 android.app.ActivityThread.main(ActivityThread.java:4960)在 的java。 lang.reflect.Method.invokeNative(Native Method)at java.lang.reflect.Method.invoke(Method.java:511)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:1038 ) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)at dalvik.system.NativeStart.main(Native Method)
設備10種
類型:
銀河S2(GT-I9100T)銀河S2(SGH-T989)的Galaxy Note II(t03g)
銀河注2(t0ltetmo)銀河注2(t0ltespr)銀河S3(d2vmu)
通電M(冬至)銀河S5(kltespr)銀河圖表 (codinaMetroPCS)銀河S3(d2tmo)銀河S3(d2ltetmo)銀河S2 史詩(SPH-D710)銀河WIN(delos3geur)
CropImageView
// Crop the subset from the original Bitmap. (line 357 below)
final Bitmap croppedBitmap = Bitmap.createBitmap(mBitmap,
(int) actualCropX,
(int) actualCropY,
(int) actualCropWidth,
(int) actualCropHeight);
return croppedBitmap;
}
MyPhotoActivity
usePhotoButton.setOnClickListener(new View.OnClickListener(){
@Override
public void onClick(View view) {
// line 308 below
finalResizedBitmap = getResizedBitmap(mImageView.getCroppedImage(), PHOTO_RESIZE_VALUE, PHOTO_RESIZE_VALUE);
topCropView.setVisibility(View.GONE);
topFinalView.setVisibility(View.VISIBLE);
mFinalImageView.setImageBitmap(finalResizedBitmap);
usePhotoButton.setVisibility(View.GONE);
uploadPhotoButton.setEnabled(true);
uploadPhotoButton.setVisibility(View.VISIBLE);
}
});
的問題是我沒有任何這些設備與測試 - 任何想法?
該應用程序是爲Android 4.0.3及以上。任何具體的想法,你可以幫助重新:我的代碼?謝謝。 – canigetabreak 2014-09-12 22:13:36
當你調用creatBitmap時,我看不到mBitmap來自哪裏,所以很難給出任何具體的東西。您正在使用的源位圖是您想要首先關注內存使用情況的地方。 – DSS 2014-09-12 22:28:42
它在這裏,https://github.com/edmodo/cropper/blob/master/cropper/src/com/edmodo/cropper/CropImageView.java你怎麼看? – canigetabreak 2014-09-15 18:30:22