Скачать все изображения из определенной папки на FireBase в IOS - PullRequest
0 голосов
/ 24 января 2019

Я пытаюсь изучить firebase. У меня есть две папки на firebase

1) VDBackgroundFrames / 2) VDFrames /

В обеих папках у нас есть 4 изображения - VDBG2.png, VDBG3.png, VDBG4.png, VDBG5.png.

Я могу получить доступ к одному изображению за раз из firebase, используя следующий код: -

 func firebaseSetUp(){

        let store = Storage.storage()
        let storeRef = store.reference()
        let userProfilesRef = storeRef.child("VDBackgroundFrames/VDBG11.jpg")
        userProfilesRef.downloadURL { (url,error) in
            if error != nil {
                print("error?.localizedDescription",error?.localizedDescription)
                return
            }else{
                print("url",url!)
            }
        }
    }

// ========== обновленный код ==== //

func firebaseSetUp(){

            let store = Storage.storage()
            let storeRef = store.reference()
            let userProfilesRef = storeRef.child("VDBackgroundFrames/")
            userProfilesRef.observe(.childAdded, with: { [weak self] (snapshot) -> Void in
                guard let strongSelf = self else { return }
                //Logic to extract urls...

                }, changeHandler: (StorageReference, NSKeyValueObservedChange<Value>) -> Void)

    }

Вывод, который я получаю, выглядит следующим образом: -

URL

https://firebasestorage.googleapis.com/v0/b/celebrations-8edf8.appspot.com/o/VDBackgroundFrames%2FVDBG11.jpg?alt=media&token=ae0910d1-2139-4443-b19a-02edde2f9b17

Я на самом деле хочу получить доступ ко всем 4 изображениям вместе из папки VDBackgroundFrames и VDFrames соответственно. Пожалуйста, предложите возможный способ сделать это. Любое предложение или руководство будет полезным.Заранее спасибо.

Folders On Firebase

Images in folder VDBackgroundFrames

1 Ответ

0 голосов
/ 24 января 2019

Просто получите доступ к корневой папке, а не к дочерней, напрямую, таким образом вы получите все узлы / изображения в этой папке примерно так:

func firebaseSetUp(){

    let store = Storage.storage()
    let storeRef = store.reference()
    let userProfilesRef = storeRef.child("VDBackgroundFrames/")
    userProfilesRef.observe(.childAdded, with: { [weak self] (snapshot) -> Void in
        guard let strongSelf = self else { return }
        //Logic to extract urls...

    } 
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...