Xcode6 模拟器路径【修改】

MacOS 10.14 Mojave 用户必看:绕过系统限制,成功安装Xcode 11.6的保姆级教程 本文为MacOS 10.14 Mojave用户提供绕过系统限制安装Xcode 11.6的详细教程。通过修改系统版本检测逻辑,开发者可在老设备上安全部署Xcode 11.6,解决项目兼容性问题。教程包含环境准备、安装包获取、关键修改步骤及后续配置,特别适合需要维护老设备的中小团队开发者。 阅读详情

       【修改】

       在发布该博客后几天,苹果公司发布了Xcode6.0.1,在笔者更新了Xcode到6.0.1后,发现,除了在下文中提到的Xcode6模拟器路径的变更还依旧如博客所写之外,应用程序的路径、Document路径、Library路径、tmp路径,甚至NSUserDafults的路径,都回到了Xcode6之前,或许是苹果在发布Xcode6之后,遭到了开发者的集体吐槽,表示不适应后,进行了更改。

       【原文】

         Xcode6发布后,出现了很多的变动,功能性的变动,在这里不进行过多的赘述,在WWDC上苹果已经进行了讲述,网上也有很多文章,这里要介绍的是一些不太容易发现的,但很重要的小地方。

         1、Xcode6模拟器路径的变更

          在Xcode5和之前的版本中,Xcode的模拟器路径为:/Users/username/Library/Application Support/iPhone  Simulator。在该文件夹下,可以查看到所有的模拟器版本,点进去后,可查看应用沙盒情况。


在开发中,建议将文件拖动快捷路径到Finder左侧个人收藏下,可以方便打开查看应用沙盒。

        在Xcode6中,将模拟器的位置进行了变更,地址如下:/Users/username/Library/Developer/CoreSimulator,打开后会发现如下情况:


在这里,苹果对模拟器进行了编码处理,并不是以模拟器系统版本进行的命名和分类,而是对Xcode6中所有的模拟器进行的区分,里面的16个文件夹分别对应的Xcode6中的16种模拟器


那如何根据这个看似乱码的文件夹,判断出是哪一款模拟器呢?

       选中某个文件后,打开会看到一个名为data的文件夹,和device.plist的配置文件,打开device.plist的配置文件后,会看到模拟器的UDID、设备类型、系统版本、名称等。通过这个可以知道模拟器的设备和系统版本。打开后,会发现,前面的看似乱码的文件名称,其实就是模拟器的设备UDID,虽然从这里可以得到模拟器的UDID,苹果也用它来进行分类模拟器,但在实际的编程中,如果想最后发布到APP Store的话,还是放弃UDID吧,这也是苹果比较霸道的一点,当然了也是在保护用户隐私的情况下做出的。

 

         2、应用沙盒地址的变更

        得到了模拟器路径后,还是用很多的不同的,应用的沙盒地址也和之前有所不同。

       在Xcode5及之前的版本中,沙盒地址为如下:/Users/username/Library/Application Support/iPhone  Simulator/7.0.3/Applications,在Applications文加下,会找到应用程序的沙盒。


在打开应用沙盒后,会有应用程序文件、Document文件夹、Library文件夹、tmp文件夹。至于这几个文件夹的作用不在此做赘述。


       在Xcode6中,应用程序文件、Document文件夹、Library文件夹、tmp文件夹这四个文件放在了不同的目录中。应用程序文件路径:/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Containers/Bundle/,Application文件夹下;Document文件夹、Library文件夹、tmp文件夹路径:/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Containers/Data/,Application文件下。但是不幸的是,这两个路径打开后的文件名,还是经过编码过的,而且,同一个应用中的应用程序文件和Document、Library、tmp文件夹所在的文件夹的文件名是不同的。只能自己找。 


       3、NSUserDefault 文件存储位置变更

       NSUserDefault是iOS提供的本地化数据存储方式,会在沙盒中自动创建一个.plist的配置文件,将数据保存起来,在读取时,以NSDictionary字典来进行接收 


       在Xcode5及之前的版本中,具体的路径为:/Users/shifengwei/Library/Application Support/iPhone Simulator/7.0.3/Applications/C9588981-3D82-49BC-92B8-F5BA72185629/Library,Preferences文件夹下,名称为程序Bundle Identifier的plist文件。在删除模拟器中的程序后,在Library文件夹下的plist文件会相应的删除。

       在Xcode6中,程序对使用NSUserDefault方式创建的plist文件的位置进行了更换,具体路径为:/Users/username/Library/Developer/CoreSimulator/Devices/模拟器UDID/data/Library,Preferences文件夹下。

       这里特别说一下,如果按照在Finder里打开的路劲来看,并不是这样的,但通过 Finder,前往文件夹,通过该路径查找是可以查到的。上述的路径地址是通过查看Preferences文件夹的显示简介获得的。


        通过上述的路径可以看出,通过NSUserDefault创建的plist文件夹还是在Library文件下,但不同的是,真正存放的位置变了,成了在模拟器的资料库文件夹下,这样的改变所产生的变化就是,当我们在删除模拟器中的应用程序后,plist文件还是会保留,并不会删除。

       那么,既然模拟器中的位置变了,那升级到iOS8后,在这方面有什么不同呢?下面就说说在在真机中调试的不同。

        1、Organizer中,在Xcode5中,是Devices、Projects、Archives三栏,而在Xcode6中,单独将Devices拿了出来,成了和Organizer平级的,在Xcode菜单栏,Window下。如果了解过Xcode从4.X升级到5时,就会知道,Organizer在那个时候也变更过,从原来的四栏变成了三栏,将帮助文档移除了。

       2、在进行真机调试时,会打开真机中应用程序的沙盒,进行查看,在Xcode中,  打开Devices的Application中,可以下载下来应用程序的沙盒,通过右击显示包内容来查看沙盒的信息。但是在iOS8和iOS7及之前出现了不同。



       上图为同一款应用在不同的系统中所表现的,上图为iOS8下,下载下来的沙盒内容,下图为iOS7.0.4下,下载下来的沙盒内容,很显然,在iOS8下,通过Devices下载的沙盒内容无法查看沙盒里面的内容。 


                我们通过第三方的软件,在这里使用的是iFunBox,找到应用程序后,打开发现可以查看到沙盒的内容,复制到本地后,发现,原本的5个文件,只有3个,也就是Document文件夹、Library文件夹、tmp文件夹三个。

     这里特别说一下,上述提到过的,在模拟器中,通过NSUserDefault自动创建的plist文件,在删除软件后,还会保留,但在真机中,也是会删除的,相应的plist文件的路径到了通过导出的Library文件夹下的Preferences文件夹下,删除应用程序后,不会保留。这应该算是一个真机和模拟器中的不同。

       这个不同会造成一种情况,那是否还可以使用NSUserDefault?就笔者目前来看,还不至于废弃NSUserDefault,毕竟它只是在模拟器中会出现删除应用保留的情况,在真机中不会,而且NSUserDefault在开发中,作为数据持久化,在保存数据时,还是很好用的。当然了,也有开发者会不适应这种情况,担心在真机中会出现,如果有开发者认为不适应的话,可以自己创建一个plist文件在沙盒中,代替,但是如果说应用中使用的NSUserDefault比较多的话,不建议这样,毕竟苹果封装的NSUserDefault还是很好用的。可以在模拟器删除文件后,在保存plist文件的文件夹下,将plist文件删除即可,多个步骤而已,至少目前来看,在真机中还是和之前一样的。

       当然,在iOS中,除了NSUserDefault会系统自动生成文件进行数据保存外,归档也是一样的,由于笔者没有进行测试,为了避免误导,这里就不说了,待测试后,进行总结发布。

       

PS:最后补充一下,打开或关闭Mac的隐藏文件的命令。

打开Mac隐藏文件命令:defaults write com.apple.finder AppleShowAllFiles -bool true

关闭Mac隐藏文件命令:defaults write com.apple.finder AppleShowAllFiles -bool false

方法:在终端中,输入该命令,回车,然后在强制退出中,重启Finder,即可。


Xcode下载VisionOS模拟器解决Could not download visionOS 1.1 Simulator(210209). 我特地捡了个M1来开发VP,结果安装不上vp的模拟器,一下午了,怀疑人生,又没买校园网,每次快下完就忽然出错,不信邪的我尝试多遍,流量用了有6x5G了。在网上搜罗了一大堆,在即将放弃之际,我终于找到了官方的模拟器dmg文件,然后进行命令行的安装即可。我让我来做一回精通Xcode VisionOS Simulator 安装的赛博菩萨吧~(bushi)提示:请确保已经安装了Xcode。终端入口默认在启动台里的其他中。 阅读详情

相关推荐

Error relaunching VirtualBox VM process:5错误解决

前几天在重新使用VirtualBox的时候出现了一个挺恶心的错误,如图 百度了好久没有找到合适的解决方法。功夫不负有心人,在查阅了vb相关论坛时发现了大牛对此问题的诸多解决方案。下面我把此论坛的内容总结一下,希望对大家有帮助。 论坛链接:Diagnosing VirtualBox Hardening Issues 时间不足的小伙伴可以直接看 解决方法 造成这个错误的主要原因是,windows操作系统与oracle vb的不兼容。有两个方面,一是非官方windows系统中包含了一些没有签名的d

JaCenz的博客 3万+

iOS 每次运行沙盒路径变化(NSSearchPathForDirectoriesInDomains)

最近在编写项目的时候发现,将一个文件路径存储到DB中之后,再此运行的时候,沙盒的路径变了,百度之后发现: iOS8,Xcode6之后,由于安全问题,苹果将沙盒路径改成动态路径,每次运行之后,会将以前的沙盒下的东西COPY备份,然后删除以前的沙盒路径,再新建一个路径,将COPY下来的东西啊,放到新的路径下。 这也就导致了我的项目存了路径,也找不到文件的问题。 那针对以上问题,有以下解决方法: // ...

Darcy的博客 1671

libero烧录信号抓取

提示:如果改了东西需要重新烧录,需要把这两个界面都关闭再libero打开。两个红色的要关闭掉。然后返回libero开始烧录,观测信号(如果只烧录观测从这一步开始就行)等到下面的messige出现以下信息表示run好了。在下图中右侧可以自己设置,设置完之后记得保存一下。run一下,耐心等待,有警告就ok,run完之后。run成功会变绿色,然后点下面的这个看波形。设置抓取信号:在libero打开。打开的就是烧录界面,直接run。

qq_34047965的博客 1422

iOS模拟器系统版本下载地址

iOS模拟器系统版本下载

lmyuanhang的专栏 2058

别再死记硬背了!用Amesim HCD库亲手搭建单向阀、锥阀、球阀模型(附详细参数设置)

本文详细介绍了如何使用Amesim HCD库从零构建单向阀、锥阀和球阀的仿真模型,帮助工程师摆脱死记硬背,掌握物理建模的核心技巧。通过实战案例和参数设置指南,读者将学会如何优化阀门动态响应、验证流量特性以及处理旋转运动等独特挑战,提升液压系统设计效率。

weixin_29248611的博客 501

QT5.14.2离线安装包保姆级教程:断网、选组件、避坑全记录

本文详细介绍了QT5.14.2离线安装包的完整流程,特别针对Windows平台开发者提供断网安装、组件选择及避坑指南。作为QT5系列中最后一个免费离线版本,5.14.2具有免注册、全组件离线安装等独特优势,是开源开发者的理想选择。文章涵盖从环境准备到安装后配置的全方位指导,帮助开发者高效完成安装并避免常见问题。

weixin_30924087的博客 578

Xcode 7中模拟器的位置

1 在Xcode 7中, 模拟器的位置改变为: /Users/username/Library/Developer/CoreSimulator/ 在此目录下,有许多目录: 2 在Terminal中使用如下命令: xcrun simctl list 显示如下结果:

坚持自己! 6207

激光SLAM算法性能对比:在Ubuntu20.04上实测Point-LIO/FAST_LIO2/Faster-LIO的运行效果

本文在Ubuntu 20.04平台上对Point-LIO、FAST-LIO2和Faster-LIO三款激光SLAM算法进行了深度实测与性能对比。通过量化分析绝对轨迹误差、CPU/内存占用及单帧处理延迟等核心指标,结合室内外场景数据,为高精度测绘、服务机器人及自动驾驶等不同应用场景提供了清晰的选型指南和实战调优建议。

weixin_28335283的博客 368

Xcode模拟器存放文件位置

在IOS程序设计中,需要查看或删除模拟器中保存的文件

CDUT100的专栏 8740

英飞凌IGBT驱动芯片2ED020I12F2去饱和电路设计总结整理收集

记录下英飞凌IGBT驱动芯片限流电阻阻值设计

nizhenyuchina的博客 5995

论文翻译:arxiv-2023 Do-Not-Answer: A Dataset for Evaluating Safeguards in LLMs

随着大型语言模型(LLMs)的快速发展,出现了新的、难以预测的有害能力。这要求开发者能够通过评估“危险能力”来识别风险,以便负责任地部署LLMs。在这项工作中,我们收集了第一个开源数据集,用于评估LLMs中的安全保障,并以低成本部署更安全的开源LLMs。我们的数据集经过策划和筛选,只包含负责任的语言模型不应遵循的指令。我们注释并评估了六个流行的LLMs对这些指令的响应。基于我们的注释,我们继续训练了几个类似BERT的分类器,并发现这些小型分类器在自动安全评估上能够取得与GPT-4相当的成果。

CSPhD-winston的博客 1131

Xcode6 模拟器路径

Xcode6 模拟器路径         Xcode6发布后,出现了很多的变动,功能性的变动,在这里不进行过多的赘述,在WWDC上苹果已经进行了讲述,网上也有很多文章,这里要介绍的是一些不太容易发现的,但很重要的小地方。         1、Xcode6模拟器路径的变更          在Xcode5和之前的版本中,Xcode的模拟器路径为:/Users/username/Library/App

太阳火神的美丽人生 2226

大模型在电力交易功率预测中的应用:短期,超短期,中长期的完整解决方案代码详解

本文介绍了基于大模型的电力交易功率预测系统,该系统覆盖超短期(15分钟-1小时)、短期(1-6小时)和中长期(1天-1月)三个时间尺度。文章详细阐述了数据准备与特征工程,包括多源数据集成和特征重要性分析。在模型构建方面,采用了Temporal Fusion Transformer (TFT)模型进行超短期预测,Informer模型进行短期预测,以及N-HiTS模型进行中长期预测。此外,文章还探讨了概率预测与风险分析,并介绍了模型部署与交易策略集成的实现。最后,文章总结了系统的贡献,并展望了未来发展方向,如市

专注AI大模型,软件混淆,授权 1264

让Appium支持xcdoe6及其以上版本

var CONFIG_FIX = { 'iPhone - Simulator - iOS 7.1': 'iPhone Retina (4-inch 64-bit) - Simulator - iOS 7.1', 'iPad - Simulator - iOS 7.1': 'iPad Retina (64-bit) - Simulator - iOS 7.1',

ztb3214的专栏 1081

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

OC入门教程-xcode第一个工程

我的IOS入门:创建第一个IOS APP工程 打开Xcode IDE开发工具,按快捷键shift + command + n或鼠标点击Create a new Xcode project打开创建工程页面。  这里选择Single View App 并单击 next 进入下一步  输入对应的创建信息,现对要输入的创建信息解释如下:   填写后点击next进入下一步操作 在此页面中,so...

流媒体巅峰之路 7572

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

El Capitan beta 6 + Xcode7 beta4一直卡在processing files的解决办法

Hi guys, I've just found a temporary workaround. (Applies to Xcode 7 beta 4 on OS X El Capitan Developer Beta 6)   Open your Terminal: cd /Applications/Xcode-beta.app (or wherever

Ben.Lee的专栏 1029

XCode6 编译opencore-amr

注:近几天需要将amr转换为wav,从搜到了好些编译opencore-amr教程,然后看到了这个帖子《编译opencore-amr for iOS》,但是该贴子中的方法xcode6中行不通,原因是xcode6的sdk路径变化了,然后修改了其路径,i386编译成功其他就失败提示GCC编译出错,然后无果。后来又搜到了下面的这个帖子《XCode6编译opencore 》,帖子中提示“如果出现编译错误

圣昊liu的专栏 782

PJSIP的编译

详情请看:http://www.wuleilei.com/blog/327 期间遇到error: C compiler cannot create executables 错误可参考:http://www.wuleilei.com/blog/326 实际上我遇到的也是类似的问题,但他写的解决方法没用。 第一个错误是export DEVPATH=/Developer/Platforms

gdutxzy的专栏 802

关于XCode6应用沙盒路径及NSHomeDirectory和NSSearchPathForDirectoriesInDomains

由于xcode6模拟器路径做了修改,跟着Finder找,一路找疯了的节奏,现在提供两个方法,来获取应用沙盒的路径。 NSLog(@"应用沙盒的路径:%@",NSHomeDirectory()); //直接打印出应用沙盒路径,此路径下包含三个文件夹,D,L,T,在Xcode6之前是4个,application移到了另外个地方      NSLog(@"%@searh Simulator

、刘三好的程序旅途 1223

iOS问题记录 - Xcode 14安装低版本iOS模拟器

Xcode 14打出来的包在低版本系统运行时会崩溃,报错信息是Library not loaded: /usr/lib/swift/libswiftCoreGraphics.dylib,在苹果开发者论坛搜索报错信息,可以看到会闪退的最高版本是iOS 12.1。

crasowas的博客 6万+

Xcode6 iOS7模拟器和Xcode7 iOS8模拟器离线下载

Xcode6 只支持iOS7和iOS8的模拟器 Xcode7 只支持iOS9和iOS8的模拟器 Xcode 并不会识别 SDKs 目录下的模拟器,我经过一些尝试以后,发现要放在这个目录下: /Library/Developer/CoreSimulator/Profiles/Runtimes/ 注意:是根目录,不在 Xcode 和 User 的目录下 而且与旧版的模拟器不同,新版...

dizhanguang5696的博客 400

Xcode6模拟器路径变更说明

Xcode6发布后,出现了很多的变动,功能性的变动,在这里不进行过多的赘述,在WWDC上苹果已经进行了讲述,网上也有很多文章,这里要介绍的是一些不太容易发现的,但很重要的小地方。 1、Xcode6模拟器路径的变更 在Xcode5和之前的版本中,Xcode的模拟器路径为:/Users/username/Library/Application Support/iPhone  Sim

yinxiaochong的博客 569

Xcode中iOS模拟器程序中的plist路径

Xcode6.4里写了个简单的iOS程序在模拟器中跑。其中用到了NSUserDefaults来保存属性文件plist,那么这个文件实际路径在哪里呢?在网上搜了一下,发现几种说法(*表示当前用户名): Xcode5和之前的版本模拟器路径在: /Users/*/Library/Application Support/iPhone Simulator 里。 Xcode6中,模拟器位置发生了变化: /U

享受开发,颠倒银河 2367

iOS Xcode 添加调试真机设备和模拟器

1. 前往文件夹或者找到xcode安装包右键显示包内容查找路径 /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/DeviceSupport 最新的Xcode默认是没有7.0和7.1文件夹,我们可以从Xcode7的DeviceSupport文件夹下拷贝出来,然后复制进去 2. 前往文件夹或者找到xcod...

gsl111000的博客 2231

iOS问题记录 - Xcode 15安装低版本iOS模拟器(持续更新)

在Xcode 14.3.1版本中,低版本iOS模拟器文件已经修改了Info.plist文件中的CFBundleIdentifier属性值,但是创建iOS模拟器的时候却还是无法选择。从官网重新下载Xcode 14.0.1版本创建低版本iOS模拟器,还是无法选择无法创建,最低只能创建iOS 14.0.1模拟器。经过分析发现是Xcode 15的问题,最终通过逆向分析找到了问题的原因。

crasowas的博客 2万+

Mac OS 10.14 低版本如何安装Xcode 11.6 高版本教程

文章目录1. 电脑系统版本2. 首先去苹果官方下载中心下载需要版本的Xcode3. 下载完毕后解压4. 解压出来的包点击会提示系统版本低不能使用5. 对不能使用的Xcode进行处理 1. 电脑系统版本 2. 首先去苹果官方下载中心下载需要版本的Xcode https://developer.apple.com/download/more/ 3. 下载完毕后解压 4. 解压出来的包点击会提示系统版本低不能使用 5. 对不能使用的Xcode进行处理 右键显示包内容 找到info.plist文件

高级软件开发工程师--周玉的博客 2万+
上一篇: 读《周鸿祎自述:我的互联网方法论》有感
下一篇: 乔布斯留给苹果的遗产
simon699
博客等级 码龄18年 0粉丝 6原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值