找不到Firebase存储对象swiftui Mac OSX

时间:2020-04-08 18:59:12

标签: firebase swiftui firebase-storage macos-catalina

总结问题: 大家下午好,

我觉得我不了解storageref.downloadURL()。我已经尝试了一遍又一遍地下载Firebase存储中已经上传的文件夹的URL。我将它们分开,如下所示:用户输入的song / songName / {song file.mp3,song photo.jpg}

注意:{}-是第二个文件夹中的项目。

现在这些图像已经上传,我正在尝试在EACH文件夹中获取图像的jpg,以便可以在水平表格视图中列出它们,以便用户可以滚动浏览它们并选择他们想要的歌曲听。出于某种原因,当我尝试下载URL时,我不断得到“对象歌曲/ 歌曲名称不存在”的信息。

描述您尝试过的方法:

我尝试过放置storage.reference().child("songs")storage.reference().child("songs/\(self.songName)")并可能更新所有功能列表,以便随后可以再次遍历每个文件。但是我被困在这里,因为我在想也许是一个完成处理程序,但是我还不太擅长这些。我还尝试对results.prefixes拥有的索引数量运行一个for循环,并在下载每个URL时更新每个文件夹。但这似乎也不起作用。

某些代码:

func getAlbums() {
        let storage = Storage.storage()
        let FolderName = "\(NSUUID().uuidString)"
        let storageRef = storage.reference().child("BeatFiles")
        self.jpgOfSong.append(FolderName)
        let metadata = StorageMetadata()
        metadata.contentType = "image/jpeg"
        storageRef.listAll(completion: {(result,error) in
            if let error = error {
                print(error.localizedDescription)
            }
            else {
                self.FolderList = result.prefixes
                DispatchQueue.main.async {
                    for num in self.FolderList.indices {
                        //give songName the new name
                        //update the search



                        self.FolderList[num]?.downloadURL(completion: {
                    (url,error) in
                            if let error = error {
                                print(error.localizedDescription)
                            }
                            else {
                                self.imageref = NSImage(contentsOf: url!.absoluteURL)
                                self.imageArray.append(self.imageref!)
                        }
                        })
                    }
                }
            }
        })
    } 

如您所见,我也尝试过使用元数据,但这似乎也不起作用。我很沮丧。

0 个答案:

没有答案