我嘗試顯示攝像頭拍攝的圖像並將其顯示在應用程序中。當我把低分辨率圖像(比如100KB的大小),我與開關位圖顯示沒有問題,缺點當我帶他們在高分辨率(1.5MB),應用程序崩潰,異常增加分配給應用程序的內存
Error java.lang.OutOfMemoryError.
它正好在我的智能手機上(三星Galaxy SII,SIII Galaxy)在所有貨架上。 現在我通過降低照片的質量和尺寸來手動解決問題,但鑑於攝像頭隨着分辨率的提高而演變,這個問題可能會更頻繁地出現。 是否沒有永久的解決方案來增加分配給我的Android應用程序的內存,而無需手動干預設備和代碼?
圖像存儲位圖格式
//image creation
Uri domuri1
ContentValues cv = new ContentValues();
cv.remove("101");
domuri1 = getContentResolver().insert(Media.EXTERNAL_CONTENT _URI, cv);
File domthumb1 = new File(domuri1.toString(), fileName1);
//increment photo apparate
Intent intent = new Intent("android.media.action.IMAGE_CAPTURE");
intent.putExtra(MediaStore.EXTRA_OUTPUT, domuri1);
startActivityForResult(intent, 100);
//images save
ContentResolver cr = getContentResolver();
bitmap1 = MediaStore.Images.Media.getBitmap(cr, domuri1);
imageView.setImageBitmap(bitmap1);
好理想,但如果我在我的androidManifest中添加這個在 eclipse tel me 錯誤:找不到包含'android'屬性'largeHeap'的資源標識符 –
vetic
2012-07-19 09:48:08
您定位的是哪個API版本? – aProgrammer 2012-07-23 09:26:58
我已經用api 8測試過了,而且我用api 11和android 3.0測試了 – vetic 2012-07-24 12:18:02