iOS 17 适配 Xcode 15 问题

在适配 iOS 17 + xcode 15时遇到的问题,记录一下。

1、 Could not build module 'WebKit'

bash 复制代码
type argument 'nw_proxy_config_t' (aka 'struct nw_proxy_config *') is neither an Objective-C object nor a block type

解决方案:

  1. 选中不能编译的库的xcodeproj,在Build Phrases -> Compile Sources,选中所有文件,Complier Flags 里删除 -DOS_OBJECT_USE_OBJC=0

可能是三方库的目标版本比较低,cocoapods兼容低版本自动加上了 -DOS_OBJECT_USE_OBJC=0,也可以修改库的podspec 的 s.platforms = { :ios => "11.0", :osx => "" } 重新 pod install

  1. 临时方案
    NSArray<nw_proxy_config_t> *proxyConfigurations 编译版本改为180000
    编辑文件 /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS17.0.sdk/System/Library/Frameworks/WebKit.framework/Headers/WKWebsiteDataStore.h
    将里面的 170000 修改成 180000。

2、 Assertion failed

Assertion failed: (false && "compact unwind compressed function offset doesn't fit in 24 bits"), function operator(), file Layout.cpp, line 5758.

解决方法:Other Link Flags 添加-ld64 或者 -ld_classic

路径:Build Settings -> Linking - General -> Other Link Flags 添加-ld64 或者 -ld_classic

相关推荐
2501_9159214315 小时前
傻瓜式 HTTPS 抓包,简单抓取iOS设备数据
android·网络协议·ios·小程序·https·uni-app·iphone
恋猫de小郭18 小时前
Flutter 在 Android 出现随机字体裁剪?其实是图层合并时的边界计算问题
android·flutter·ios
2501_9159184118 小时前
把 iOS 性能监控融入日常开发与测试流程的做法
android·ios·小程序·https·uni-app·iphone·webview
Digitally21 小时前
如何轻松地将大型音频文件从 iPhone 发送到不同的设备
ios·iphone
catchadmin1 天前
PHP 现在可以零成本构建原生 iOS 和 Android 应用 NativePHP for Mobile v3 发布
android·ios·php
TheNextByte11 天前
如何将照片从 iPhone 传输到三星?
ios·iphone
2501_915921431 天前
不用 Xcode 上架 iOS,拆分流程多工具协作完成 iOS 应用的发布准备与提交流程
android·macos·ios·小程序·uni-app·iphone·xcode
Ron丶1 天前
iOS 旧版本 App 下载方法汇总:如何获取历史版本 IPA(2026 仍有效)
windows·经验分享·macos·ios·电脑
晴天无痕1 天前
ios OC 获取当前控制器
ios
pop_xiaoli2 天前
OC-实现下载单例类
ios·objective-c·cocoa·xcode