怎么样让Xcode14.3跑iOS17 beta的设备

背景

iOS17beta也发布了很长时间了,为了工程的稳定性,需要提前测试工程在高版本系统的是否会出现问题。其中一项就是需要在低版本Xcode中去本地跑高版本iOS设备,来定位高版本出现的问题。

问题

以往低版本Xcode要跑高版本iOS设备,只需要将/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport中对应的iOS版本添加进该目录就行,但是但是更新了xcode15之后发现,最新Xcode的DeviceSupport目录下并没有对应的ios17镜像文件。

Xcode15 beta的DeviceSupport目录:

官方的解释是:

With iOS 17+, we are using a new device stack (CoreDevice) to communicate with devices. With this new device stack, there is one DDI per platform (as opposed to per OS release). This same device stack will be shared across all versions of Xcode on your system, and installing a newer version of Xcode will update CoreDevice and its DDIs (just like how CoreSimulator is updated if you are familiar with that).

This effectively means that you now have a supported way of updating the device stack on your system to support newer target OS devices. With CoreDevice, you should be able to debug devices running future versions of iOS using Xcode 15. This may require first installing a newer Xcode in order to install newer CoreDevice and DDIs, so keep that in mind.

Of course, this also means there is a temporary hiccup in which the old unsupported path doesn't work, but the good news is that future-you will have a supported way of doing this which works out-of-the-box, no need to modify your Xcode.app.

也就是xcode15之后将会以CoreDevice的方式去对iOS设备进行兼容。 所有的Xcode设备共享一份CoreDevice和DDIs,这样在xcode15和之后版本中,只要装了最新版Xcode,所有版本的Xcode都能调试CoreDevice中兼容的iOS设备,也就是低版本Xcode也能直接兼容高版本ios设备,而无需去更改xcode中的目录。

解决问题

经测试,xcode14其实也兼容了CoreDevice的方案,只是默认是关闭的。

  1. 安装最新版macOS beta

  2. 下载xcode15 beta并安装(为了获取最新的CoreDevice)

  3. 执行命令(这一步的作用大概就是开启xcode14 的CoreDevice支持,使得xcode14能使用最新的CoreDevice。)

    shell 复制代码
    defaults write com.apple.dt.Xcode DVTEnableCoreDevice enabled

跑起来

操作系统是最新版beta,那xcode14就不能再用了 使用方式,应用程序->xcode14->显示包内容->contents->MacOS->Xcode 进程运行起来,选择需要执行的工程就OK了。 选择ios7的设备时,会有个CoreDevice的标识:

这样就能跑起来啦~

参考文档: developer.apple.com/forums/thre... stackoverflow.com/questions/7...

相关推荐
Magnetic_h1 小时前
【iOS】设计模式复习
笔记·学习·ios·设计模式·objective-c·cocoa
00后程序员张3 小时前
详细解析苹果iOS应用上架到App Store的完整步骤与指南
android·ios·小程序·https·uni-app·iphone·webview
前端小超超3 小时前
capacitor配置ios应用图标不同尺寸
ios·蓝桥杯·cocoa
2501_915106325 小时前
Xcode 上传 ipa 全流程详解 App Store 上架流程、uni-app 生成 ipa 文件上传与审核指南
android·macos·ios·小程序·uni-app·iphone·xcode
kymjs张涛7 小时前
零一开源|前沿技术周刊 #16
ios·apple·hacker news
2301_821046527 小时前
Python与Go结合
ios·iphone
他们都不看好你,偏偏你最不争气8 小时前
【iOS】AFNetworking
开发语言·macos·ios·objective-c
zhanggui10 小时前
iOS Debug Symbols
ios·xcode·debug symbox
库奇噜啦呼15 小时前
【iOS】static、const、extern关键字
ios
zzywxc78716 小时前
AI工具全景洞察:从智能编码到模型训练的全链路剖析
人工智能·spring·ios·prompt·ai编程