本文首发于公众号【UC研发效能】git
苹果惯例一年一度大升级一次iOS, 会把相关开发工具和系统都升级一遍, 十分蛋疼, 不少时候, 咱们还不想升级XCode, 更不想升级系统, 特别是beta版的时候, 同时安装2个XCode, 十分恶心. 对于Mac OS还好, 大部分状况的新版XCode均可以支持到当前主流的系统版本, 若是不是Mac开发者, 基本不用去折腾beta版的Mac.
其实一直以来都有方法, 去使用任何的XCode版本去调试当前XCode版本不支持的iOS系统.github
若是你的Mac插入iPhone后, XCode能正常识别出来, 那就只须要打开这个目录markdown
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupportapp
把对应里面没有, 并且你又须要的系统DeviceSupport复制进去便可, 而后重启XCode后, 等XCode生成对应系统的符号表, 便可开始调试.ide
对应的iOS系统DeviceSupport的文件, 能够到github 找一找工具
你能够下载新的XCode, 解压后, 在 Xcode.app/Contents/Resources/Packages 下能找到MobileDevice.pkg, 直接安装就能够.oop
能够简单看到DeviceSupport的每一个系统版本的文件夹里面, 都只有2个文件, DeveloperDiskImage.dmg和DeveloperDiskImage.dmg.signature.
XCode链接上手机时, 会自动挂载对应的DeviceSupport, 想手动挂载上去也能够经过ideviceimagemounter指定对应的DeviceSupport去挂载, DeviceSupport里面的东西权限很是大, 咱们也有想过替换里面的东西, 但是无奈终究仍是绕不过dmg的签名, iPhone直接拒绝挂载 /(ㄒoㄒ)/~~ 在历史iOS版本的越狱工具里, 也有大神利用了DeveloperDiskImage的漏洞.
那样DeviceSupport里面是有些什么呢?
若是在Mac下挂载DeveloperDiskImage.dmg后, 能够看到里面是这样的
开发工具
使用苹果的PackageMaker查看这个pkg, 能够看到苹果更新的相关的驱动和相关依赖库
spa
Mac下安装不明来历的pkg是很是危险的..
调试
研测领域资深专家团队,依托UC十余年移动技术沉淀,全力打造专业的研发效能平台。服务于阿里巴巴100+产品,为团队下降研测成本、提高交付效率,助力产品提高用户体验,让产品交付更好更快更安心。