前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 ># Xcode 12.x添加iOS 10.x模拟器

# Xcode 12.x添加iOS 10.x模拟器

原创
作者头像
莫空9081
修改2021-07-15 18:04:01
6.8K1
修改2021-07-15 18:04:01
举报
文章被收录于专栏:iOS 备忘录iOS 备忘录

背景

笔者昨天遇到个问题,有用户反馈在iOS 10.3.1的手机上,有个网页打开白屏。但是问题是笔者手头都没有10.x版本的手机,所以想安装模拟器来尝试复现。

然而,笔者发现电脑上的Xcode版本是12.5.1,已经不支持iOS 10.3.1的模拟器下载了。

<!--more-->

步骤

下载iOS 10.3.1模拟器

然后笔者搜索后发现,Xcode 12.4还是支持下载iOS 10.3.1的模拟器的,于是去Xcode 下载网站,下载了Xcode 12.4,然后CMD + ,打开Xcode的偏好设置,在Components选项卡中,找到iOS 10.3.1 Simulator并下载,如下图。

wecom20210715-161409.png
wecom20210715-161409.png

添加iOS 10.3.1模拟器

通常添加模拟器,是选中Xcode,通过顶部菜单的Window -> Device and Simulators,选中Simulators,点击左下角的+,添加模拟器,如下图

screen shot 2021-07-15 at 16.19.20.png
screen shot 2021-07-15 at 16.19.20.png

会发现,即使下载了iOS 10.3.1模拟器,依旧不能添加,下载了却不能添加。

x5ltb.png
x5ltb.png

于是笔者接着查找,终于仅有的一篇真理文章在 Xcode 12 執行低版本的 iOS 模擬器蹦了出来,按照文章的说法是,模拟器runtime版本的Framework中map文件,里面设定各版本对应的Mac OS系统上限,所以会导致添加不了。

解决方法就是:修改模拟器的Info.plist中对应的CFBundleIdentifier,绕过map文件即可。

具體作法很簡單,關閉模擬器跟 Xcode,然後舉例來說我要強制執行 10.3 模擬器,就編輯 /Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 10.3.simruntime/Contents/Info.plist,把 CFBundleIdentifier 從 com.apple.CoreSimulator.SimRuntime.iOS-10-3 改成 com.apple.CoreSimulator.SimRuntime.iOS-10-3-1,透過後面加一個 -1 的方式,把讓版本限制檢查的函數找不到該 bundle name,然後再打開 Xcode 就可以加入了!

笔者实践经验:

  1. 修改Plist可以拷贝出来修改后再拷贝进去替换
  2. 修改后确实可以添加10.3的模拟器,mac 11.4系统,可以正常运行操作。
  3. Mac 12.0 beta系统,即macOC Moterey,即使修改后添加成功了,也运行不了。

参考

在 Xcode 12 執行低版本的 iOS 模擬器

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 背景
  • 步骤
    • 下载iOS 10.3.1模拟器
      • 添加iOS 10.3.1模拟器
      • 参考
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档