0
我目前正在將圖像作爲Base64傳遞給休息服務。但我無法讀取文件。這裏是我的代碼:在GDK中將圖像轉換爲base64
if (requestCode == iPictureCode && resultCode == RESULT_OK) { String picturePath = data.getStringExtra(Intents.EXTRA_PICTURE_FILE_PATH); String image = processPictureWhenReady(picturePath); }
`私人字符串processPictureWhenReady(最後絃樂picturePath){ 最終文件PictureFile的=新的文件(picturePath);
if (pictureFile.exists()) {
// The picture is ready; process it.
Bitmap bitmap = BitmapFactory.decodeFile(pictureFile.getAbsolutePath());
bitmap = CameraUtils.resizeImageToHalf(bitmap);
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 85, stream);
String base64Image = Base64.encodeToString(stream.toByteArray(), Base64.DEFAULT);
return base64Image;
}
}`
它永遠不會進入,如果塊 'pictureFile.exists()'
可能是什麼問題呢?
感謝@Tony對你的迴應...我在我的問題中刪除了那段代碼......但是現在當我用'EXTRA_THUMBNAIL_FILE_PATH'替換'EXTRA_PICTURE_FILE_PATH'時,它對我有用 – 2014-09-22 03:58:59
當縮略圖圖像立即準備就緒時活動結果被返回,所以如果你只需要一個低分辨率的圖像,你可以使用它。但是,如果需要,您仍然需要使用FileObserver來檢測全尺寸圖像。縮略圖立即可用的原因是,您可以在用戶界面中顯示某些內容,以確認照片是在準備完整圖像時拍攝的。 – 2014-09-22 15:27:54
感謝@TonyAllevato的幫助:) – 2014-09-23 09:39:10