Android拍照顯示圖片並上傳遇到的諸多問題

問題一:拍照跳轉時會報空指針異常


默認情況下,即不需要指定intent.putExtra(MediaStore.EXTRA_OUTPUT, uri);照相機有自己默認的存儲路徑,拍攝的照片將返回一個縮略圖。如果想訪問原始圖片,可以通過dat extra能夠得到原始圖片位置。即,如果指定了目標uri,data就沒有數據,如果沒有指定uri,則data就返回有數據

解決方法:
從url中獲取所需資源

問題二:在將拍照獲得的圖片進行轉換成字符串編碼時造成內存溢出問題


錯誤原因:
轉換時默認是先將圖片加載到內存當中然後在進行轉換,但是由於加載的圖片太大,超過了要求,所以出現了內存溢出這樣的問題導致程序崩潰

解決方法:
通過在圖片轉換時設置這兩個參數,inSampleSize對圖片進行壓縮,inJustDecodeBounds設置圖片不加載到內存
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize size;
options.inJustDecodeBounds false;

問題三:上傳時內存溢出

錯誤原因:
圖片轉換後佔用內存還是太大,超過了限制,導致程序崩潰

解決方法:
繼續壓縮圖片,調整壓縮倍數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章