Xcode 12.x下载了iOS10.x模拟器无法创建对应Device问题修复
转自:
https://hiraku.tw/2021/04/6428/
感谢原作者,如有侵权请评论联系删除文章
在升級到 Xcode 12 之後,有些人發現雖然 Xcode 允許安裝低版本的模擬器,但卻怎樣都無法新增該版本的模擬器裝置。詳細的文章內容可以參考這裡。
實際上 Xcode 12 官方支援的最低版本為 iOS 11.4 的模擬器,如果沒有特別需求的話,我們從 Xcode 安裝 11.4 的模擬器就可以正常使用了。
但,若我因為某些原因,就是想安裝 11.3,甚至更低版本的 10.3.1 模擬器,該怎麼辦呢?
這時候就要用神奇的修改方式來繞過檢查啦~
首先,透過逆向工程得知,/Library/Developer/PrivateFrameworks/CoreSimulator.framework/Versions/A/CoreSimulator
是實際上在設定模擬器 runtime 版本上限的 Framework。根據偷看的結果,發現裡面寫死了一個 map,裡面包含各個版本對應的 macOS 系統上限。在這邊有兩個作法繞過,第一個就是直接 hook 或修改 binary,使得 Framework 不檢查版本限制,但這樣太麻煩了,我們用簡單一點的方法:把 runtime 改到不在限制列表當中即可。
具體作法很簡單,關閉模擬器跟 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 就可以加入了!
PS: 此方法最低可正常 debug 版本經測試為 iOS 10.x(我只測試 10.3),iOS 9.3 雖然可以執行模擬器,但是無法掛載 App 以及進行 debug。iOS 8 模擬器則是會直接造成電腦 kernal panic 重開機。
Xcode 12.x下载了iOS10.x模拟器无法创建对应Device问题修复的更多相关文章
- Apple Xcode 12.5 (12E262) 正式版发布 - 构建 Universal App
请访问原文链接:https://sysin.org/article/apple-xcode-12/,查看最新版.转载请保留出处. Xcode 12 简介 Xcode 12 采用全新设计,在 macOS ...
- Quartus II 12.0 下载、安装和破解
转载:http://www.cnblogs.com/imapla/archive/2012/09/10/2678814.html 20130417 Quartus II 12.0 不支持波形仿真,推荐 ...
- Xcode版本太低引发的bug,xcode各种版本下载方式详解
问题描述: mac系统10.9.5 .之前用的xcode 是5.1.接sdk时,一直报错,编译不过去.最后发现原因是xcode版本太低导致的. 于是去网上找xcode历史版本下载.因为系统版本原因,我 ...
- TortoiseGit2.12.0-64下载和安装【Windows10】
TortoiseGit2.12.0-64下载和安装[Windows10] 下载 下载地址:https://tortoisegit.org/download/ 找到合适自己版本的点击后会自动下载 安装 ...
- Xcode全系列下载地址
Xcode全系列下载地址,不断更新dmg 格式 下载链接:http://pan.baidu.com/s/1mgyxLP2
- [Mac]Mac Xcode 删除已经下载好的模拟器版本
Delete simulator refences for xCode: Delete the particular simulator runtime references (*.simruntim ...
- Xcode iOS9.3 配置包 iOS10.0 配置包 iOS10.2 配置包 could not find developer disk image
在Finder状态下前往目录.快捷键:shift+command+G,填写路径/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS ...
- Xcode 各个版本下载地址
从Xcode8开始不支持uiautomation了,需要下载老版本的xcode Xcode 的各种版本的下载地址 https://developer.apple.com/download/more/
- iOS开发之用Xcode 在真机上截屏与模拟器截屏
一.真机截屏 1.打开Xcode 6 2.在xcode 选择模拟器或者真机设备的地方选中你的真机 3.Debug-->View Debugging-->Take Screenshot of ...
- 我超级推荐的Navicat Premium 12的下载,破解方法
今天给大家推荐一款炒鸡好用的数据库管理工具,使用它,可以很方便的连接各种主流数据库软件----Navicat Premium 12 但是,它是要钱的,不过我们可以使用破解机来破解它,步骤稍有些复杂,简 ...
随机推荐
- voxel体素网络滤波器
1.简介 在进行建图的时候,由于多个视角内存在视野重叠,即多个摄像头看到同样的像素点,这样在重叠区域内会存在大量的位置十分相近的点,这会占用很多内存空间.体素网络滤波保证了在某个一定大小的立方体内只有 ...
- CSS_语法格式
* 格式: 选择器{ 属性名1:属性值1: 属性名2:属性值2: ... } *选择器:筛选具有相似特征的元素 *注意: *没一对属性需要使用":"隔开,对最后一对属性可以不加&q ...
- A*算法小记
\(\text{A*}\) 一种启发式搜索 和暴搜的差别是多了一个估价函数,每次取出一个估算最优的状态以期更高效完成任务 重点在于估价函数 \(\text{h*(n)}\) 的设计,若实际代价为 \( ...
- JZOJ 2022.02.11【提高A组】模拟
\(\text{Solution}\) 首先把 \(T2\) 给切了,\(T1\) 找半天规律找不到 然后打了个表算是暴力了 \(T3\) 也暴... 太暴了... \(T4\) 直接啥也不会 \(\ ...
- 推荐一个Dapper扩展CRUD基本操作的开源库
在C#众多ORM框架中,Dapper绝对称得上微型ORM之王,Dapper以灵活.性能好而著名,同样也是支持各种数据库,但是对于一些复杂的查询,我们写原生的SQL语句问题不大,对于CRUD基本操作,我 ...
- 云原生数据库TDSQL-C 容灾的实践和探索
云原生数据库TDSQL-C作为腾讯云架构平台部核心数据库产品之一,致力于为云上ToB用户和公司自研业务提供集高性能.低成本.大存储.低延迟.秒级扩缩容.极速回档.Serverless化七大特性于一体的 ...
- MySQL的Temporary Files存放路径
在Linux环境中MySQL用TMPDIR环境变量来设置temporary files的路径,如果没有设置,MySQL会用系统默认 /tmp, /var/tmp或/usr/tmp. 1.当排序时(OR ...
- 《用Python写网络爬虫》pdf高清版免费下载
<用Python写网络爬虫>pdf高清版免费下载地址: 提取码:clba 内容简介 · · · · · · 作为一种便捷地收集网上信息并从中抽取出可用信息的方式,网络爬虫技术变得越来越有 ...
- vue框架2
插值语法 mvvm演示 <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...
- python requests库从接口get数据报错Max retries exceeded with url解决方式记录
问题: session = HTMLSession() r: requests_html.HTMLResponse r = session.get(url=req["url"], ...