andorid 報錯bindertransation

來源:互聯網
上載者:User

原因是 官方規定intent傳遞時,資料不能超過1M

The Binder transaction buffer has a limited fixed size, currently 1Mb, which is shared by all transactions in progress for the process. (http://developer.android.com/intl/zh-cn/reference/android/os/TransactionTooLargeException.html)

所以必須對圖進行縮放處理

private Bitmap zoombitmap(Bitmap tmpBitmap) {int rawHeight = tmpBitmap.getHeight();     int rawWidth = tmpBitmap.getWidth();     System.out.println("原圖高:"+rawHeight+"寬:"+rawWidth);    // 設定圖片新的高寬,根據圖片長寬進行設定 縮圖長寬    int newHeight=100;    int newWidth=200;    // 計算縮放因子     float heightScale = ((float) newHeight) / rawHeight;     float widthScale = ((float) newWidth) / rawWidth;     // 建立立矩陣     Matrix matrix = new Matrix();     matrix.postScale(heightScale, widthScale);      Bitmap resizeBmp =Bitmap.createBitmap(tmpBitmap,0,0,rawWidth,rawHeight,matrix,true);    return resizeBmp; }

這樣處理後,報錯是不會了,但是不夠智能,美觀,需改進

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.