我試圖從cameraRoll
上傳圖片。事情是cameraRoll
組件返回content:// URI而不是實際的文件路徑。爲了上傳圖片我需要一個文件路徑,有什麼辦法將content:// URI轉換爲文件URI嗎?謝謝將React-Native轉換爲Android的實際路徑內容:// URI爲實際路徑
回答
我把提交@Madhukar Hebbar功能,使它成爲一個陣營本地節點模塊。
你可以在這裏找到:react-native-get-real-path
從而達到你想要什麼,你可以結合使用上述模塊react-native-fs
然後,您可以做這樣的事情,當你要上傳的選擇來自相機膠捲的圖像:
RNGRP.getRealPathFromURI(this.state.selectedImageUri).then(path =>
RNFS.readFile(path, 'base64').then(imageBase64 =>
this.props.actions.sendImageAsBase64(imageBase64)
)
)
你是救世主!只有一個問題 - 因爲它只適用於android - 需要將require包行放入平臺檢查邏輯中。然而,與它提供的效用相比 - 我可以忽略這一點。 :-) –
我已經使用過你的圖書館,但沒有成功。我收到一個錯誤,「undefined不是一個函數(reactNativeGetRealPath2.default.getRealPathFromUri(path))',我給的路徑是content://com.google.android.apps.photos.contentprovider/-1/1 /內容%3A%2F%2Fmedia%2Fexternal%2Fimages%2Fmedia%2F890/ORIGINAL/NONE/225703422' –
將content:// URI
傳遞給下面的方法來獲取文件路徑作爲字符串,然後使用文件對象來執行任何操作。
File file = new File(getURIPath(uriValue));
/**
* URI Value
* @return File Path.
*/
String getURIPath(Uri uriValue)
{
String[] mediaStoreProjection = { MediaStore.Images.Media.DATA };
Cursor cursor = getContentResolver().query(uriValue, mediaStoreProjection, null, null, null);
if (cursor != null){
int colIndex = cursor.getColumnIndexOrThrow(MediaStore.Images.Media.DATA);
cursor.moveToFirst();
String colIndexString=cursor.getString(colIndex);
cursor.close();
return colIndexString;
}
return null;
}
- 1. 將虛擬路徑轉換爲ASP.NET中的實際web路徑
- 2. ASP.NET MVC:將虛擬路徑轉換爲實際路徑是錯誤的
- 3. 從uri獲取實際路徑?
- 4. 將URI轉換爲路徑
- 5. 如何將文件路徑轉換爲Android中的內容Uri?
- 6. Php require() - 實際路徑
- 7. android獲取Uri.getPath的實際路徑()
- 8. 將文件路徑轉換爲URI
- 9. 將URI轉換爲Windows路徑格式
- 10. 將文件路徑轉換爲URI
- 11. 如何將文件夾路徑轉換爲內容Uri?
- 12. 如何將圖像的文件路徑轉換爲實際圖像?
- 13. 將'../../'轉換爲'路徑/路徑'
- 14. 將路徑轉換爲UNC路徑
- 15. c#將路徑轉換爲新路徑\\
- 16. 將路徑轉換爲絕對路徑
- 17. 將HTTP路徑轉換爲UNC路徑?
- 18. 獲取PathGeometry的實際路徑
- 19. 如何將默認調試路徑路由到asp.net mvc中的實際路徑?
- 20. 使.htaccess保持實際文件路徑
- 21. Spark讀取CSV實際路徑
- 22. 如何隱藏實際路徑Carrierwave
- 23. Url路徑編碼,實際工作?
- 24. 在solaris shell中獲取實際路徑
- 25. 轉換包:控制器:文件名到實際文件路徑
- 26. 如何將路徑轉換轉換爲路徑中的ImageBrush?
- 27. Android - 將URI轉換爲棒棒糖上的文件路徑
- 28. 轉換爲路徑
- 29. 如何將Android路徑對象轉換爲SVG路徑標記?
- 30. 如何將base64圖像路徑轉換爲使用jquery的真實路徑。
爲什麼你需要一條路徑?你不能使用'InputStream'嗎? – pskink
我正在開發一個React-Native應用程序,並且使用Java方法有點麻煩,所以我正在尋找一個反應原生解決方案。謝謝 – cubbuk