React Native iOS应用Xcode编译失败,Android模拟器运行正常
React Native iOS集成Firebase后编译失败求助
我的React Native应用在Android模拟器上运行正常,但iOS模拟器测试时持续编译失败。集成Firebase之前iOS模拟器运行没问题,加了Firebase SDK后开始出问题。我刚接触Xcode,严格按指引操作,也试了很多网上的解决方案,都没解决。
相关文件内容
Podfile
require_relative '../node_modules/react-native/scripts/react_native_pods' require_relative '../node_modules/@react-native-community/cli-platform-ios/native_modules' $RNFirebaseAsStaticFramework = true platform :ios, '12.4' install! 'cocoapods', :deterministic_uuids => false use_frameworks! :linkage => :static target 'MyHomeProject' do config = use_native_modules! #Installing pods pod 'Firebase/Core' pod 'Firebase/Auth' pod 'Firebase/Firestore' pod 'Firebase/Storage' flags = get_default_flags() use_react_native!( :path => config[:reactNativePath], # Hermes is now enabled by default. Disable by setting this flag to false. # Upcoming versions of React Native may rely on get_default_flags(), but # we make it explicit here to aid in the React Native upgrade process. :hermes_enabled => true, :fabric_enabled => flags[:fabric_enabled], # Enables Flipper. # Note that if you have use_frameworks! enabled, Flipper will not work and # you should disable the next line. # :flipper_configuration => FlipperConfiguration.enabled, # An absolute path to your application root. :app_path => "#{Pod::Config.instance.installation_root}/.." ) target 'MyHomeProjectTests' do inherit! :complete # Pods for testing end post_install do |installer| react_native_post_install( installer, # Set `mac_catalyst_enabled` to `true` in order to apply patches # necessary for Mac Catalyst builds :mac_catalyst_enabled => false ) __apply_Xcode_12_5_M1_post_install_workaround(installer) end end
AppDelegate.h
#import <React_RCTAppDelegate/RCTAppDelegate.h> #import <UIKit/UIKit.h> @interface AppDelegate : RCTAppDelegate @end
AppDelegate.m
#import "AppDelegate.h" #import <React/RCTBridge.h> #import <React/RCTBundleURLProvider.h> #import <Firebase.h> @implementation AppDelegate - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *)launchOptions { [FIRApp configure]; self.moduleName = @"MyHomeProject"; self.initialProps = @{}; bool didFinish = [super application:application didFinishLaunchingWithOptions:launchOptions]; return didFinish; } - (NSURL *)sourceURLForBridge:(RCTBridge *)bridge { #if DEBUG return [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index"]; #else return [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"]; #endif } @end
主文件代码
#import <UIKit/UIKit.h> #import "AppDelegate.h" int main(int argc, char *argv[]) { @autoreleasepool { return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); } }
编译错误信息
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/usr/include/os/_workgroup.h:34:10 Could not build module 'os_workgroup'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CABase.h:16:10 Could not build module 'CoreFoundation'/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator17.0.sdk/System/Library/Frameworks/CFNetwork.framework/Headers/CFNetwork.h:18:10 Could not build module 'CoreFoundation'- 主文件错误:
Could not build module 'UIKit'
还有大量类似上述的.h文件编译错误。
内容的提问来源于stack exchange,提问作者user15928679
相关产品推荐
相关产品推荐

