我正在製作一個用戶在Firebase存儲上上傳圖片的應用程序。上傳圖片後,我想將圖片的網址和其他詳細信息上傳到我自己的API中。我怎樣才能得到用戶剛剛上傳的圖像的Uri。 This教程教導如何做上傳,但不顯示如何獲取圖像URL。我嘗試了所有的教程,但沒有顯示我想要的東西。如何在將圖像上傳到Firebase後獲取圖像URL?
-1
A
回答
2
根據the documentation,您可以撥打.getDownloadUrl
中的.onSuccessListener
來獲取圖片網址。
下面是從文檔的例子:
// Get the data from an ImageView as bytes
imageView.setDrawingCacheEnabled(true);
imageView.buildDrawingCache();
Bitmap bitmap = imageView.getDrawingCache();
ByteArrayOutputStream baos = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] data = baos.toByteArray();
UploadTask uploadTask = mountainsRef.putBytes(data);
uploadTask.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
// Handle unsuccessful uploads
}
}).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
// taskSnapshot.getMetadata() contains file metadata such as size, content-type, and download URL.
Uri downloadUrl = taskSnapshot.getDownloadUrl();
}
});
0
您將獲得的回調的onSuccess的下載網址。檢查以下代碼
public static void storeInFirebase(Context context, Uri uri, String type) {
StorageReference riversRef = null;
mStorageRef = FirebaseStorage.getInstance().getReference();
//to create a separate folder with all the pictures uploaded
riversRef = mStorageRef.child("pictures/" + "unique_value");
UploadTask uploadTask = riversRef.putFile(uri);
uploadTask.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
DialogUtils.dismissProgressDialog();
// Handle unsuccessful uploads
}
}).addOnSuccessListener(new OnSuccessListener<UploadTask.TaskSnapshot>() {
@Override
public void onSuccess(UploadTask.TaskSnapshot taskSnapshot) {
// taskSnapshot.getMetadata() contains file metadata such as size, content-type, and download URL.
downloadUrl = taskSnapshot.getDownloadUrl();
Log.d("downloadUrl", "" + downloadUrl);
}
});
}
相關問題
- 1. 我如何將fileReader之後的圖像上傳到firebase存儲
- 2. 使用Angular.js將圖像上傳到Firebase
- 3. 從Ruby中的圖像url將圖像上傳到AWS?
- 4. Android Firebase多圖像上傳
- 5. 無法將捕獲的圖像上傳到firebase存儲
- 6. 上傳單個圖像到firebase存儲
- 7. 將圖像上傳到圖像後全部顯示
- 8. 如何將圖像上傳到jqgrid列
- 9. android - 如何將圖像上傳到Dropbox?
- 10. 將圖像上傳到localStorage
- 11. 將圖像上傳到Azure
- 12. 將圖像上傳到S3
- 13. 將新映像上傳到Firebase存儲後刷新緩存的圖像
- 14. Firebase在成功將圖片上傳到Firebase存儲後獲取下載網址
- 15. iphone - 將圖像上傳到flickr像Hipstamatic
- 16. Webservice上傳的圖像url
- 17. 上傳圖像通過URL
- 18. 如何在將文件上傳到Firebase後獲取文件的URL?
- 19. 如何從圖像url中獲取圖像數據
- 20. 如何從圖像字段類型獲取圖像url
- 21. 如何獲取拍攝圖像的URL?
- 22. 上傳圖像到服務器的URL
- 23. 上傳或獲取圖像時出現403錯誤 - Firebase
- 24. 在PHP中獲取圖像的URL url
- 25. 如何將圖庫中的圖像上傳到圖像視圖中?
- 26. 將Powershell URL圖像傳輸到FTP
- 27. 如何獲取圖像名稱上傳到服務器後在科爾多瓦
- 28. Mediawiki圖像URL獲取
- 29. 獲取JSON,圖像URL
- 30. 如何將用戶圖像從Tablecell傳遞給Firebase上的Viewcontroller?
謝謝仁。 Firebase存儲是否適用於上傳應用程序的圖像,該應用程序每天會在性能和可用性方面使用該Url上傳20-50個圖像和1000-5000個圖像? –
Firebase是該場景的可行解決方案。請記住,這樣的數量可能會超過免費級別。點擊此處瞭解更多關於定價的信息:https://firebase.google.com/pricing/ 如果我的回答有幫助,請接受它。謝謝! –
另外仁,如果我有一個谷歌高級帳戶,那麼隨着音量的增加,我可以免費使用Firebase服務嗎? –