添加firebase时,React-native构建失败到IOS

46qrfjad  于 2023-04-22  发布在  React
关注(0)|答案(1)|浏览(151)

我试图导出一个IOS应用程序,但当我将firebase库添加到项目中时,导出IOS时,我得到一个错误BUILD FAILED。
我已经遵循了官方文档,我甚至遵循了几个教程,但错误是相同的。
在XCODE中构建错误是:无法生成模块“os_workgroup”CABASE -无法生成模块“CoreFoundation”CFNETWORK -无法生成模块“CoreFoundation”CFStream -无法生成模块“Dispatch”CGBase -无法生成模块“CoreFoundation”CLErrorDomain -无法生成模块“Foundation”CoreImageDefines -无法生成模块“CoreGraphics”CTFontTraits -无法生成模块“CoreFoundation”CVBase -无法生成模块“CoreFoundation”调度-无法生成模块“os_workgroup”EAGL -无法生成模块“Foundation”Foundation -无法生成模块“CoreFoundation”ImageIOBase -无法生成模块“CoreFoundation”IOSurfaceBase -无法生成模块“CoreFoundation”main -无法生成模块“UIKit”模块-模块“Firebase”的重定义MTLTypes -无法生成模块“Foundation”NSAttributeString -无法生成模块“Foundation”NSFileProviderDomain -无法生成模块“Foundation”NSString+UserNotifications -无法生成模块“Foundation”React-Core-umbrella -无法生成模块“UIKit”SecBase -无法生成模块“CoreFoundation”UIKit -无法生成模块“Foundation”vecLibTypes -无法生成模块“_Builtion_intrinsics”Could not build module 'UIKit'
我删除了firebase库,并尝试导出到两个平台,一切正常。
我删除了DerivedData文件、pod文件和node_module文件,并重新安装了所有文件,结果都是一样的。
文件podfile,AppDelegate(#import<Firebase.h>)具有与文档中解释的相同的设置,我尝试更改为#import 'Firebase.h',但仍然相同。
我的信息
系统:操作系统:macOS 13.1 CPU:(12)x64 Intel(R)Core(TM)i7- 9750 H CPU@2.60GHz内存:1.85 GB / 32.00 GB shell :5.8.1 - /bin/zsh二进制文件:Node:19.2.0 - ~/.nvm/versions/node/v19.2.0/bin/node Yarn:Not Found npm:9.2.0 - ~/.nvm/versions/node/v19.2.0/bin/npm Watchman:2023.01.09.00 - /usr/local/bin/watchman管理员:CocoaPods:1.11.3 - /usr/local/bin/pod SDK:iOS SDK:平台:DriverKit 22.2、iOS 16.2、macOS 13.1、tvOS 16.1、watchOS 9.1 Android SDK:未找到IDE:Android Studio:2021.3 AI-213.7172.25.2113.9123335 Xcode:14.2/14 C18- /usr/bin/xcodebuild语言:Java:11.0.17 - /usr/bin/javac npmPackages:@react-native-community/cli:未找到React:18.1.0 =〉18.1.0 react-native:0.70.6 =〉0.70.6 react-native-macos:404 Not Found Not Foundreact-native:未找到
有什么建议吗?你能帮忙吗?

sh7euo9m

sh7euo9m1#

安装@react-native-firebase/app@react-native-firebase/messaging
ios目录中打开Podfile并添加以下行:

pod 'Firebase', :modular_headers => true
pod 'FirebaseCoreInternal', :modular_headers => true
pod 'GoogleUtilities', :modular_headers => true
pod 'FirebaseCore', :modular_headers => true

介于两者之间

flags = get_default_flags()

use_react_native!(

然后删除podfile.lock
在项目根目录下的终端中,运行以下命令:

cd ios
pod deintegrate
pod cache clean --all
npm cache verify
yarn cache clean
pod install --repo-update

接下来,清理XCode -> Product -> Clean Build Folder下的构建文件夹。
在XCode中运行一次你的应用。然后你可以在终端上运行你的应用。

如果由于某种原因您遇到此错误

"No Firebase App '[DEFAULT]' has been created - call firebase.initialzeApp()"

开放AppDelegate.mm add and this

#import <Firebase.h>

下面

#import <React/RCTRootView.h>

搜索包含didFinishLaunchingWithOptions的代码块,并在代码块的开头添加以下代码

if ([FIRApp defaultApp] == nil) {
  [FIRApp configure];
}

所以,你会有这样的东西

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
  # Firebase configuration
  if ([FIRApp defaultApp] == nil) {
    [FIRApp configure];
  }
  
  # rest of the code below which you shouldn't touch 
  # unless you absolutely know what you are doing
  ...

这将发送错误打包。
Cheers!!!

相关问题