gpt4 book ai didi

ios - 如何迁移到 Xcode 12.5

转载 作者:行者123 更新时间:2023-12-03 16:46:13 27 4
gpt4 key购买 nike

我无法使用 Xcode 12.5 构建使用 Xcode 11 正确构建的 React Native 项目。
我不能再使用 Xcode 11,因为只有更新的 Xcode 版本带有必要的 API 来发布/上传到 TestFlight 和应用商店。
现在我得到三个构建错误:

Cannot initialize a parameter of type 'NSArray<id<RCTBridgeModule>> *' with an rvalue of type 'NSArray<Class> *'

Cannot initialize a parameter of type 'NSArray<id<RCTBridgeModule>> *' with an rvalue of type 'NSArray<Class> *'

Cannot initialize a parameter of type 'NSArray<id<RCTBridgeModule>> *' with an rvalue of type 'NSArray<Class> *'
我还注意到部署目标从 10 和 9 自动升级:
- IPHONEOS_DEPLOYMENT_TARGET = 9.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 12.1;
添加了一些与 Clang 相关的新属性:
+ CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES;
如何配置项目以使用 Xcode 12.5 部署此应用程序?
$ react 原生信息
info 获取系统和图书馆信息...
系统:
操作系统:macOS 11.3
CPU:(4) x64 Intel(R) Core(TM) i3-8100B CPU @ 3.60GHz
内存:256.45 MB/8.00 GB
外壳:3.2.57 -/bin/bash
二进制文件:
节点:10.16.0 -/usr/local/bin/node
yarn :1.21.1 - ~/npm-global/bin/yarn
npm:6.9.0 -/usr/local/bin/npm
守望者:4.9.0 -/usr/local/bin/watchman
开发工具包:
iOS SDK:
平台:iOS 14.5、DriverKit 20.4、macOS 11.3、tvOS 14.5、watchOS 7.4
IDE:
Xcode:12.5/12E262 -/usr/bin/xcodebuild
npmPackages:
react :^16.11.0 => 16.12.0
react 原生:0.61.4 => 0.61.4
npmGlobalPackages:
react 原生 cli:2.0.1

最佳答案

我通过更改 React 模块 RCTCxxBridge.mm 中的参数转换来解决此问题,如下所示:

- (NSArray<RCTModuleData *> *)_initializeModules:(NSArray<id<RCTBridgeModule>> *)modules
withDispatchGroup:(dispatch_group_t)dispatchGroup
lazilyDiscovered:(BOOL)lazilyDiscovered
至:
- (NSArray<RCTModuleData *> *)_initializeModules:(NSArray<Class> *)modules
withDispatchGroup:(dispatch_group_t)dispatchGroup
lazilyDiscovered:(BOOL)lazilyDiscovered
我正在运行 0.59 并且不使用 CocoaPods,但基本修复是以下形式的强制转换:
NSArray<id<RCTBridgeModule>> *)modules
应替换为:
NSArray<Class> *)modules

关于ios - 如何迁移到 Xcode 12.5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67288005/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com