簡體   English   中英

如何在android中從FIREBASE STORAGE檢索到的數據添加分頁?

[英]How to add pagination in data retreived from FIREBASE STORAGE in android?

我正在嘗試在使用 Firebase 存儲從 firebase 檢索的圖像數據中添加分頁。 我在那里有 10 張圖片,我想在 RecyclerView 中一次顯示 2 張,當用戶向下滾動到垂直結束時,它會加載下一張圖片,直到顯示所有圖片,我還閱讀了 Firebase 的一些文檔,其中提到了使用 storage.list(int max results) 方法,但它只顯示我在該方法中傳遞的結果數,例如,如果我傳遞 2,它只顯示 2 個圖像,我無法再加載。 我在官方文檔中也找到了一種方法,如下所示: https://firebase.google.com/docs/storage/android/list-files

public void listAllPaginated(@Nullable String pageToken) {
    FirebaseStorage storage = FirebaseStorage.getInstance();
    StorageReference listRef = storage.getReference().child("files/uid");

    // Fetch the next page of results, using the pageToken if we have one.
    Task<ListResult> listPageTask = pageToken != null
            ? listRef.list(100, pageToken)
            : listRef.list(100);

    listPageTask
            .addOnSuccessListener(new OnSuccessListener<ListResult>() {
                @Override
                public void onSuccess(ListResult listResult) {
                    List<StorageReference> prefixes = listResult.getPrefixes();
                    List<StorageReference> items = listResult.getItems();

                    // Process page of results
                    // ...

                    // Recurse onto next page
                    if (listResult.getPageToken() != null) {
                        listAllPaginated(listResult.getPageToken());
                    }
                }
            }).addOnFailureListener(new OnFailureListener() {
                @Override
                public void onFailure(@NonNull Exception e) {
                    // Uh-oh, an error occurred.
                }
            });
}

我對如何使用它感到困惑,我不知道從哪里可以獲得頁面令牌以提供打開下一頁的參考

問題是我的 Firebase 存儲中有 200 張圖像,我想直接對從 Firebase 存儲中檢索的 URL 應用分頁。

為此,您有兩種選擇。 第一個是使用StorageReference#listAll()方法,該方法:

列出此 StorageReference 下的所有項目(文件)和前綴(文件夾)。

根據關於如何在 Android 上使用雲存儲列出文件的官方文檔,請注意:

Cloud Storage for Firebase 允許您列出 Cloud Storage 存儲桶的內容。 SDK 返回當前 Cloud Storage 引用下的項目和對象前綴

因此,您必須在應用程序代碼中明確區分(項目與前綴)並提供您自己的分頁算法。

您擁有的第二個選項,也是最簡單的選項,在我看來,是將圖像 URL 存儲在Firestore中並實現分頁,如下所述:

使用查詢游標對數據進行分頁

暫無
暫無

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

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