Firebase可以与Swift框架项目一起使用吗?

时间:2017-12-09 15:09:32

标签: ios xcode firebase cocoapods

我采取了以下步骤:

  1. 创建一个全新的swift单一视图应用程序。
  2. 添加表示对Firebase的依赖性的pod文件
  3. 安装pod
  4. 打开生成的工作区并为模拟器构建
  5. 构建成功
  6. 然后我重复这些步骤,除了在步骤1中我创建了一个全新的swift可可触摸框架。现在构建失败了。

    如下所示,Firebase引用了未定义的符号。这些符号大部分都是我认识到并且期望存在的符号:UIScreen,UIWebView,UIView等。

    我怀疑这一切都与Firebase是静态库这一事实有关(正如Mike McDonald所指出的那样here是Firebase无法与Carthage一起使用的原因)。

    我对应用程序,框架和库的差异/后果的理解极限。谁能帮我理解这里发生了什么?

      

    架构x86_64的未定义符号:     " _OBJC_CLASS _ $ _ UIScreen",引自:         FirebaseAuth中的objc-class-ref(FIRAuthWebViewController_86c5ea5aedb4d33fd68b8660d74be54c.o)     " _OBJC_CLASS _ $ _ UIWebView",引自:         FirebaseAuth中的objc-class-ref(FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _OBJC_CLASS _ $ _ UIActivityIndi​​catorView",引自:         FirebaseAuth中的objc-class-ref(FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _OBJC_METACLASS _ $ _ UIView",引自:         FirebaseAuth中的_OBJC_METACLASS _ $ _ FIRAuthWebView(FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _CGRectZero",引自:          - FirebaseAuth中的[FIRAuthWebView createWebView](FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _UIApplicationOpenURLOptionsAnnotationKey",引自:          - FirebaseAuth中的[FIRAuthAppDelegateProxy initWithApplication:](FIRAuthAppDelegateProxy_d84ca069394368ea9e8127dbd13cc324.o)     " _UIApplicationDidEnterBackgroundNotification",引自:         ___ 23-在FirebaseAuth中的[FIRAuth initWithApp:] _ block_invoke_2(FIRAuth_cce0d8e8cd5be2b376ebd7862de82f18.o)          - FirebaseAuth中的[FIRAuth dealloc](FIRAuth_cce0d8e8cd5be2b376ebd7862de82f18.o)          - FirebaseCoreDiagnostics中的[FIRClearcutLogger init](FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)     " _OBJC_CLASS _ $ _ UIColor",引自:         FirebaseAuth中的objc-class-ref(FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _OBJC_CLASS _ $ _ UIViewController",引自:         FirebaseAnalytics中的objc-class-ref(UIViewController + FIRAScreenClassName_936040e31cd4dddd6f71a52ea1701d0d.o)         FireBSAnalytics中的l_OBJC _ $ _ CATEGORY_UIViewController _ $ _ FIRAScreenClassName(UIViewController + FIRAScreenClassName_936040e31cd4dddd6f71a52ea1701d0d.o)         FirebaseAuth中的_OBJC_CLASS _ $ _ FIRAuthWebViewController(FIRAuthWebViewController_86c5ea5aedb4d33fd68b8660d74be54c.o)     " _OBJC_CLASS _ $ _ UIPageViewController",引自:         FirebaseAnalytics中的objc-class-ref(FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)     " _UIApplicationDidFinishLaunchingNotification",引自:         FirebaseAnalytics中的[FIRAMeasurement load](FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)     " _OBJC_METACLASS _ $ _ UIViewController",引自:         FirebaseAuth中的_OBJC_METACLASS _ $ _ FIRAuthWebViewController(FIRAuthWebViewController_86c5ea5aedb4d33fd68b8660d74be54c.o)     " _OBJC_CLASS _ $ _ UIView",引自:         FirebaseAuth中的_OBJC_CLASS _ $ _ FIRAuthWebView(FIRAuthWebView_25b1b3be4cd535a13078fd46686b4a67.o)     " _UIApplicationLaunchOptionsURLKey",引自:         FirebaseAnalytics中的[FIRAMeasurement handleAppDidFinishLaunching:](FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)     " _OBJC_CLASS _ $ _ UINavigationController",引自:         FirebaseAnalytics中的objc-class-ref(FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)         FirebaseAuth中的objc-class-ref(FIRAuthURLPresenter_f9c1670c7b472e1f12d82d1c6f46940a.o)         FirebaseAuth中的objc-class-ref(FIRAuthDefaultUIDelegate_57cb718a1d423e27d0d50a3bf9524d86.o)     " _UIApplicationWillEnterForegroundNotification",引自:         ___ 48- [FIRAMeasurement startMeasurementOnWorkerQueue] _block_invoke in FirebaseAnalytics(FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)     " _OBJC_CLASS _ $ _ UITabBarController",引自:         FirebaseAnalytics中的objc-class-ref(FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)         FirebaseAuth中的objc-class-ref(FIRAuthDefaultUIDelegate_57cb718a1d423e27d0d50a3bf9524d86.o)     " _OBJC_CLASS _ $ _ UIBarButtonItem",引自:         FirebaseAuth中的objc-class-ref(FIRAuthWebViewController_86c5ea5aedb4d33fd68b8660d74be54c.o)     " _OBJC_CLASS _ $ _ UIDevice",引自:         FirebaseAnalytics中的objc-class-ref(FIRAEnvironmentInfo_0da493a96efd1159c2c84454cf5a7f9d.o)         FirebaseAnalytics中的objc-class-ref(FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)         FirebaseAnalytics中的objc-class-ref(FIRAInAppPurchaseTransactionReporter_51b6624ff1330bf43a3ed7d9ba76e1ba.o)         FirebaseAnalytics中的objc-class-ref(FIRAAEU_58e35a32128cb3aedeb97de41a9b356d.o)         FirebaseAnalytics中的objc-class-ref(FIRAIdentity_8e9287d1fd6072066ad3b1332bc62373.o)         FirebaseAuth中的objc-class-ref(FIRAuthKeychain_ee296104c7d22b9c7b07f84e7067440c.o)         FirebaseCore中的objc-class-ref(FIRAppEnvironmentUtil_d91f40fc45222373d7f99c8b2ea3c83a.o)         ...     " _UIWindowDidResignKeyNotification",引自:          - FirebaseAnalytics中的[FIRAScreenViewReporter init](FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)     " _UIApplicationDidBecomeActiveNotification",引自:         ___ 48- [FIRAMeasurement startMeasurementOnWorkerQueue] _block_invoke in FirebaseAnalytics(FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)          - FirebaseAnalytics中的[FIRAScreenViewReporter init](FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)         ___ 23-在FirebaseAuth中的[FIRAuth initWithApp:] _ block_invoke_2(FIRAuth_cce0d8e8cd5be2b376ebd7862de82f18.o)          - FirebaseAuth中的[FIRAuth dealloc](FIRAuth_cce0d8e8cd5be2b376ebd7862de82f18.o)     " _OBJC_CLASS _ $ _ UIWindow",引自:         FireBSAnalytics中的l_OBJC _ $ _ CATEGORY_UIWindow _ $ _ FIRAScreenClassName(UIWindow + FIRAScreenClassName_93645224f692c290f5d755885ec7f4c8.o)     " _UIApplicationWillResignActiveNotification",引自:         ___ 48- [FIRAMeasurement startMeasurementOnWorkerQueue] _block_invoke in FirebaseAnalytics(FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)          - FirebaseAnalytics中的[FIRAScreenViewReporter init](FIRAScreenViewReporter_ac44c2e1b22c7193e316d64ecdc73845.o)     " _UIBackgroundTaskInvalid",引自:          - FirebaseAnalytics中的[FIRAMeasurement initWithDatabaseName:persistedConfig:network:scheduler:alarm:options:](FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)          - FirebaseAnalytics中的[FIRAMeasurement swapBackgroundTaskWithNewTaskID:](FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)          - FirebaseAnalytics中的[FIRAMeasurement terminateBackgroundTask](FIRAMeasurement_41f8c6ad6e1fd9e66100bee4ee2fdd35.o)          - FirebaseCoreDiagnostics中的[FIRClearcutLogger init](FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)          - FirebaseCoreDiagnostics中的[FIRClearcutLogger dealloc](FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)          - FirebaseCoreDiagnostics中的[FIRClearcutLogger sendLogsWithCompletionHandler:](FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)         ___ 51- FirebaseCoreDiagnostics中的[FIRClearcutLogger sendLogsWithCompletionHandler:] _ block_invoke(FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)         ...     " _OBJC_CLASS _ $ _ UIApplication",引自:         FirebaseAnalytics中的objc-class-ref(FIRAAppDelegateProxy_2421946053f1c5c031a7dceeaf4d9408.o)         FirebaseAuth中的objc-class-ref(FIRAuth_cce0d8e8cd5be2b376ebd7862de82f18.o)         FirebaseAuth中的objc-class-ref(FIRAuthAppDelegateProxy_d84ca069394368ea9e8127dbd13cc324.o)         FirebaseAuth中的objc-class-ref(FIRAuthDefaultUIDelegate_57cb718a1d423e27d0d50a3bf9524d86.o)         FirebaseCoreDiagnostics中的objc-class-ref(FIRClearcutLogger_d1e734d02d610ce1f3d8c66a4d80fa41.o)         FirebaseInstanceID中的objc-class-ref(FIRMessagingLog_045f628692bcbe68f0c668c89b92b24f.o)   ld:找不到架构x86_64的符号

0 个答案:

没有答案