程式要把路徑存進資料庫裡
以便之後叫出來
但是 android.net.Uri 的 getPath() 方法拿出來的
不是真正的檔案路徑
所以無法用這個來叫出圖片
為此又請出 Google 大神
真的被我找到了
趕快來記錄一下
無論是圖片還是音樂檔案都可用此取得路徑
解法如下:
//MediaStore.Images.Media.DATA 跟 MediaStore.Audio.Media.DATA 都是 "_data" public static String getFilePathFromUri(Context context, Uri uri) { CursorLoader cursorLoader= new CursorLoader( context, uri, new String[]{ "_data" }, null, null, null ); String returnStr = ""; Cursor cursor = cursorLoader.loadInBackground(); if(cursor.getCount()!=0){ cursor.moveToFirst(); returnStr = cursor.getString(cursor.getColumnIndexOrThrow("_data")); } return returnStr; }
參考資料來源:
stackoverflow.com 的文章
沒有留言:
張貼留言