搜索
查看
编辑修改
首页
UNITY
NODEJS
PYTHON
AI
GIT
PHP
GO
CEF3
JAVA
HTML
CSS
搜索
Cpp五条
这个屌丝很懒,什么也没留下!
关注作者
热门标签
jquery
HTML
CSS
PHP
ASP
PYTHON
GO
AI
C
C++
C#
PHOTOSHOP
UNITY
iOS
android
vue
xml
爬虫
SEO
LINUX
WINDOWS
JAVA
MFC
CEF3
CAD
NODEJS
GIT
Pyppeteer
article
热门文章
1
【蓝桥杯】十进制转十六进制(Java实现)_蓝桥杯十进制转十六进制java
2
【NLP笔记】文本分词、清洗和标准化
3
一文详解Docker容器(Container)_docker container name
4
TRIM:提升磁盘性能,缓解Android卡顿_fstrim
5
踩坑! spring事务,非事务方法与事务方法执行相互调用_spring 事务方法调用非事务方法
6
进入新的领域:AI绘画
7
Electron中加载百度地图api调用其中方法报错:Uncaught ReferenceError: md5 is not defined
8
多OS环境问题汇总_cpybck
9
tomcat服务搭建_搭建tomcat服务器
10
webpack 打包 错误 Unexpected identifier_打包报错 syntaxerror: unexpected identifier
当前位置:
article
> 正文
Xcode6 模拟器路径_ios 开发 xcode模拟器的路径在哪里
作者:Cpp五条 | 2024-03-15 14:55:01
赞
踩
ios 开发 xcode模拟器的路径在哪里
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/iP hone 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文件下。但是不幸的是,这两个路径打开后的文件名,还是经过编码过的,而且,同一个应用中的应用程序文件和D、L、t文件夹所在的文件夹的文件名是不同的。只能自己找。
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,即可。
声明:
本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:
https://www.wpsshop.cn/w/Cpp五条/article/detail/242001
推荐阅读
article
【
Xcode
-宏定义
配置
】
_
ios
xcode
项目
配置
宏...
ifdef DEBUG / / DEBUG模式 #else / / 非DEBUG模式 #endif。
_
ios
xcode
...
赞
踩
article
xcode
编译设置_
validate
_
product
...
https://developer.apple.com/library/mac/documentation/Develo...
赞
踩
article
Xcode
Build Setting 整理(二)_
xcode
build
is
m
is
sing e...
文章目录`Apple Clang``Apple Clang - Address Sanitizer` 清扫`Apple ...
赞
踩
article
Tutorial:
Storyboard
in XCode 4.2
with
Navigation
...
Download the tutorial images here…
Storyboard
tutorial icons...
赞
踩
article
学习笔记1:
Xcode
vision
pro
模拟
器
-
环境
/
场景
模拟
替换...
但是
vision
os这个
环境
替换做的思路就很不一样了,这个
环境
是会影响到应用的呈现效果的,里面是满满的黑科技,也是需要大...
赞
踩
article
Xcode
模拟器
路径
_ios
xcode
模拟器
的位置...
Xcode
6
模拟器
路径
Xcode
6发布后,出现了很多的变动,功能性的变动,在这里不进行过多的赘述,在WWDC上苹...
赞
踩
article
iOS
问题记录 -
Xcode
14安装
低版本
iOS
模拟器
(持续更新)_
xcode
安装
低版本
模拟器
...
Xcode
14打出来的包在
低版本
系统运行时会崩溃,报错信息是Library not loaded: /usr/lib/...
赞
踩
article
xcode
创建
模拟器
_利用ios
模拟器
来
跑
自动化
...
模拟器
的好处不用说了。不占用机器资源,关键是不断电。虽然他不能完全模拟真机行为。但很多时候还是nice to have的...
赞
踩
article
Xcode
中的
iOS
模拟器
(
iOS
Simulator
)的介绍和使用心得_mac
xcode
如何打...
iOS
模拟器
简介
iOS
功能简介
iOS
模拟器
,是在Mac下面开发程序时,开发
iOS
平台的程序时候,可以使用的辅助工具。其功...
赞
踩
article
提升
iOS
开发效率!
Xcode
9
内置
模拟器
的
9
个技巧_ios
模拟器
编写程序
...
点击查看》》》》》》》》》》》》》原文地址:
iOS
模拟器
是在开发任意
iOS
应用程序过程中不可或缺、无法被忽视的一个部分。...
赞
踩
article
探究
Xcode
命令行
用法
二:
xcodebuild
测试
实践_-
only
-
testing
:...
本文还是 adat 项目的延伸,瞄准开发周期的
测试
环节,主要介绍
Xcode
范畴内的
测试
概念和自动化
测试
实践,不会讨论...
赞
踩
article
使用
Xcode
在
iOS
模拟器
中调试 Web 页面_
xcode
手机
模拟器
查看
web
控制台...
买不起iphoneX,但是买得起mac的前端穷逼看过来! 使用
Xcode
就能在mac上模拟iphoneX,当然也可以模拟...
赞
踩
article
Xcode6
模拟器
路径_/
coresimulator
...
转自:http://www.cocoachina.com/bbs/read.php?tid=231024
Xcode6
发...
赞
踩
article
Xcode
9.4
模拟器
Simulator
存放路径
_
xcode
启动的
simulator
位置放在哪...
1、
模拟器
查看/下载打开
Xcode
,从
Xcode
菜单选择Preference在Component选项卡中查看已经安装的模...
赞
踩
article
xcode
获取
模拟器
app
沙盒
路径_iOS
沙盒
机制...
沙盒
机制每个应用都有自己独立的存储空间应用不能翻过围墙去访问别的存储空间应用请求的数据都要进行权限检查,如果不符合,就不...
赞
踩
article
Xcode
7中
模拟器
的
位置
_
xcode
模拟器
位置
...
1在
Xcode
7中,
模拟器
的
位置
改变为:/Users/username/Library/Developer/Core...
赞
踩
article
Xcode
9中
模拟器
的
位置
_
xcode
watchos
模拟器
存储
位置
...
1. 在
Xcode
7中,
模拟器
的
位置
改变为:/Users/username/Library/Developer/Co...
赞
踩
article
Monorepo
解决方案
— 基于
Bazel
的
Xcode
性能优化实践...
背景介绍书接上回《
Monorepo
解决方案
—
Bazel
在头条 iOS
的
实践》,在头条工程切换至
Bazel
构...
赞
踩
相关标签
xcode
macos
ios
application
tabs
image
table
go
学习
笔记
xcode 创建模拟器
xcode9内置模拟器
xcode9模拟器更新
模拟器
单元测试
持续集成系统
xcode6
xcode 获取模拟器app沙盒路径