无法将Firebase数据库添加到iOS部分

问题描述:

我试图让FlutterFire Database工作在我的应用程序的iOS部件上(它能在Android上正常工作),但我收到一些错误消息,说我的GoogleService-Info.plist文件不是在哪里找到。但我很确定它被正确放置在我的项目中。
这是控制台输出:无法将Firebase数据库添加到iOS部分

[Firebase/Core][I-COR000003] The default Firebase app has not yet been configured. Add [FIRApp configure] to your application initialization. Read more: https://firebase.google.com/docs/ios/setup#initialize_firebase_in_your_app. 
[Firebase/Core][I-COR000012] Could not locate configuration file: 'GoogleService-Info.plist'. 
[Firebase/Core][I-COR000005] No app has been configured yet. 
*** Terminating app due to uncaught exception 'com.firebase.core', reason: '[FIRApp configure] could not find a valid GoogleService-Info.plist in your project. Please download one from https://console.firebase.google.com/.' 
    *** First throw call stack: 
    (
     0 CoreFoundation      0x000000010ccad34b __exceptionPreprocess + 171 
     1 libobjc.A.dylib      0x000000010c70e21e objc_exception_throw + 48 
     2 CoreFoundation      0x000000010cd16265 +[NSException raise:format:] + 197 
     3 Runner        0x0000000109bdeb67 +[FIRApp configure] + 353 
     4 Runner        0x0000000109b79979 -[FirebaseDatabasePlugin init] + 185 
     5 Runner        0x0000000109b79838 +[FirebaseDatabasePlugin registerWithRegistrar:] + 168 
     6 Runner        0x0000000109b765e9 +[GeneratedPluginRegistrant registerWithRegistry:] + 121 
     7 Runner        0x0000000109b76473 -[AppDelegate application:didFinishLaunchingWithOptions:] + 99 
     8 UIKit        0x000000010d0c70be -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 290 
     9 UIKit        0x000000010d0c8a43 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 4236 
     10 UIKit        0x000000010d0cede9 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1731 
     11 UIKit        0x000000010d0cbf69 -[UIApplication workspaceDidEndTransaction:] + 188 
     12 FrontBoardServices     0x0000000110fd4723 __FBSSERIALQUEUE_IS_CALLING_OUT_TO_A_BLOCK__ + 24 
     13 FrontBoardServices     0x0000000110fd459c -[FBSSerialQueue _performNext] + 189 
     14 FrontBoardServices     0x0000000110fd4925 -[FBSSerialQueue _performNextFromRunLoopSource] + 45 
     15 CoreFoundation      0x000000010cc52311 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 
     16 CoreFoundation      0x000000010cc3759c __CFRunLoopDoSources0 + 556 
     17 CoreFoundation      0x000000010cc36a86 __CFRunLoopRun + 918 
     18 CoreFoundation      0x000000010cc36494 CFRunLoopRunSpecific + 420 
     19 UIKit        0x000000010d0ca7e6 -[UIApplication _run] + 434 
     20 UIKit        0x000000010d0d0964 UIApplicationMain + 159 
     21 Runner        0x0000000109b7654f main + 111 
     22 libdyld.dylib      0x000000010ea9d68d start + 1 
     23 ???         0x0000000000000008 0x0 + 8 
    ) 

这里是我的项目树的截图: enter image description here

我想这在GeoFire插件例如文件夹,可以在这里找到:https://github.com/bramvbilsen/Flutter-GeoFire/tree/master/example我很想听听你们是否有更多的运气和可能的解决方案!

+0

你调用配置功能的第一个错误消息引用? – Connor

+0

我没有,应该在哪里调用?我只是使用'FlutterFire'插件,并认为在Android上运行的确切Dart代码将在iOS上运行。 –

+0

我对FlutterFire并不熟悉,但是在配置一个只使用Firebase的项目时,总是需要我调用FirebaseApp.configure()。最好把它放在AppDelegate的'didFinishLaunching'中。 – Connor

好的,我找到了解决方案! 显然Xcode 9不会将该文件添加到您的实际项目中!

  1. 这个问题可以是点击GoogleServices-info.plist文件
  2. 检查Runner项目的目标会员标签
+0

查看图片请参阅https://github.com/firebase/quickstart-ios/issues/5#issuecomment-333264355 –