React Native 错误:在iOS上未找到RNFirebase核心模块

xdnvmnnf  于 2022-11-25  发布在  React
关注(0)|答案(4)|浏览(170)

我创建了一个新的应用程序,并试图使用react-native-firebase。但我不断得到这个错误:
RNFirebase核心模块未在iOS上本地找到,请确保您已在项目“Podfile”中正确包含RNFirebase pod,并已运行“pod install”。
有关ios设置指南,请参阅http://invertase.link/ios
我已完成的步骤:

  1. yarn add react-native-firebase
  2. react-native link react-native-firebase
    1.在.../myproject/ios/myproject下设置我的.plist文件
    1.在确保我使用的是Ruby 2.5.0之后运行pod update
    1.已运行pod安装
    我当前使用的pod文件是:
# Uncomment the next line to define a global platform for your project
platform :ios, '9.0'

target 'MyProject' do
  # Uncomment the next line if you're using Swift or would like to use dynamic frameworks
  # use_frameworks!
    pod 'Firebase/Core'
    pod 'Firebase/Database'
    pod 'Firebase/Messaging'

  target 'MyProjectTests' do
    inherit! :search_paths
    # Pods for testing
  end

end

以下是我正在使用的版本:

"react": "^16.3.0-alpha.1",
"react-native": "0.54.2",
"react-native-firebase": "^3.3.1",
kxeu7u2r

kxeu7u2r1#

如果不想手动链接,可以尝试直接将RNFirebase作为pod安装:

pod 'RNFirebase', :path => 'path/to/node_modules/react-native-firebase/ios'

改变或硬编码HEADER_SEARCH_PATHS没有帮助我。当错误再次出现时,它没有必要rm -rf node_modules也没有必要删除pod文件等,我发现该高速缓存很有用。

ybzsozfc

ybzsozfc2#

我总是不喜欢使用pod和react native,然而,react native firebase的非pop安装说明将不起作用。
原因是软件包的搜索路径假定为/pod或/firebase

因此,要使其正确链接,请执行以下步骤:
1.下载Firebase SDK
1.直接在ios下创建一个文件夹,并将其命名为Firebase,在该文件夹中复制sdk所需的框架,而不保留子文件夹(注意,您尚未输入XCode)
1.如果您还没有npm,请安装-s react-native-firebase
1.打开XCode并将所需的框架拖放到XCode的Frameworks-folder中(例如,在我的例子中,Analytics,Messaging和DynamicLinks文件夹的内容)。

1.在XCode中,右键单击库并选择“将文件添加到[项目]"。在node_modules中找到RNFirebase-项目并选择RNFirebase.xcodeproj,不要“复制项目”

1.在项目/目标设置中,转到链接框架和库。找到并添加libRNFirebase.a

1.在AppDelegate.m中,根据react-native-firebase的说明进行调整,例如:didFinishLaunchingWithOptions中的import <Firebase.h> and [FIRAPP configure];
1.在题头搜索路径和结构搜索路径中,添加$(PROJECT_DIR)/Firebase
1.不要忘记将GoogleServices-Info.plist添加到您的项目中

2jcobegt

2jcobegt3#

我有同样的问题,而试图修复它是使我的应用程序崩溃启动。
我通过ios/AppFolder/下的终端移动了它,但是Xcode从来没有意识到这个文件。
帮助我的是在Xcode中打开我的项目。然后左键单击我的AppFolder > Add Files,然后添加GoogleService-Info.plist

dgenwo3n

dgenwo3n4#

我手动将这些react-native-firebase/* 包与

react-native link  @react-native-firebase/xxx

“@React Native防火墙/分析”、"@React Native防火墙/应用程序”、"@React Native防火墙/授权”、"@React Native防火墙/崩溃分析”、"@React Native防火墙/消息传递”,这些信息在pod中生成pod规范,并且运行正常。

相关问题