iOS Swift Firebase存储错误"未找到默认存储桶"

时间:2017-04-19 03:23:54

标签: ios swift firebase firebase-storage

尝试设置对我的Firebase存储的引用,如下所示:

let storage = FIRStorage.storage()

我看到以下错误:

uncaught exception 'NSInvalidArgumentException', reason: 'No default 
Storage bucket found. Did you configure Firebase Storage properly?'

据我所知,一切设置正确。

  • 我在Firebase上创建并关联了应用
  • 我已经生成并添加了谷歌plist
  • 我用CocoaPods安装了库:
    • pod' Firebase / Core'
    • pod' Firebase / Storage'

我已经使用Firebase初始化了应用程序而没有任何问题:

import Firebase
import UIKit


class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?


    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
        // Override point for customization after application launch.

        // Use Firebase library to configure APIs
        FIRApp.configure()

        return true
    }

不确定是否有一些我遗漏的明显内容,从我一直关注的教程中我应该非常直接。无论哪种方式,任何洞察力将非常感谢!提前谢谢。

其他设置信息:

  • Xcode版本:8.2.1
  • CocoaPods版本:1.2.1

4 个答案:

答案 0 :(得分:3)

我好像很快就打电话给Firebase。我将引用调用移动到函数中:

func uploadToFirebase(data: Data) {
    let ref = FIRStorage.storage().reference(withPath: "images/demoPic.jpg")
   ...
}

一切都顺利进行 - 感谢线索@mgtla!

答案 1 :(得分:2)

希望在遵循Firebase教程后发布有关此文章的其他人的更新。

applicationDidFinishLaunchingWithOptions有时可能需要更长时间才能运行,并且在应用程序的其他区域(即ViewController)运行之前的代码之前无法完成运行。

因此,您可能会收到“尚未配置默认Firebase应用”等错误。或者“找不到默认存储桶。您是否正确配置了Firebase存储?”因为尚未配置Firebase应用

解决此问题的方法详见this answer.实际上,您需要将FirebaseApp.configure()语句添加到AppDelegate中的覆盖init()语句中,如下所示:

override init() {
   super.init()
   FIRApp.configure()
   // not really needed unless you really need it FIRDatabase.database().persistenceEnabled = true
}

希望这有帮助!

答案 2 :(得分:0)

这是根Firebase存储参考:

let storageRef = FIRStorage.storage().reference()

答案 3 :(得分:0)

将Firebase Storage添加到现有iOS应用程序时遇到了这个问题。

您需要重新生成GoogleService-Info.plist文件,该文件现在将正确包含“ STORAGE_BUCKET”键,并在您的项目中对其进行更新。