簡體   English   中英

如何在 firebase 存儲上多次上傳可繪制圖像?

[英]How to upload multiple time a drawable image on firebase storage?

我想知道是否可以多次上傳從 firebase 存儲上的可繪制圖像中獲取的相同圖像,以使圖像在存儲上以不同的名稱多次出現。 我要做的是:

imageUri=Uri.parse("android.resource://com.example.project/"+R.drawable.error);
riversRef = storageRef.child("images/" + imageUri.getLastPathSegment()+ "_" + System.currentTimeMillis());
uploadTask = riversRef.putFile(imageUri);

但是每次我在存儲中使用它時都不會出現任何新圖像,只是第一個。 可能是因為在存儲上具有相同的名稱 (2131230900) 並且是相同的圖像存儲忽略它。 我想要獲得的結果是我從我的項目的可繪制對象中獲取了兩個相同的圖像,但在存儲中它們導致了 2 個不同的名稱

您的riversRef是對 Cloud Storage 中特定位置/文件的引用。 如果你在同一個引用上多次調用putFile ,你會多次寫入同一個位置,所以你最終只會得到一個文件

要編寫多個唯一文件,您需要為每個文件創建一個單獨的唯一引用。 就像是:

riversRef = storageRef.child("images/" + file.getLastPathSegment() + "_" + System.currentTimeMillis());

通過在此處將時間戳添加到存儲上的文件名,如果您多次調用它,我們最終會得到唯一的引用。 或者像這樣的東西也可以工作:

for (int i=0; i < 10; i++) {
    riversRef = storageRef.child("images/" + file.getLastPathSegment() + "_" + i);
    uploadTask = riversRef.putFile(file);
}

所以現在我們只是為 Cloud Storage 中的每個文件名添加一個計數器。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM