Cod*_*eef 224 iphone ios-simulator
我有一个用于存储应用程序数据的SQLite数据库,我可以查看它来调试我遇到的问题 - 但iPhone模拟器通常在哪里存储数据?
dsm*_*ger 281
对于SDK 3.2,接受的答案是正确的 - SDK 4 将该路径中的/ User文件夹替换为可以模拟的每个旧版iPhone OS/iOS版本的编号,因此路径变为:
〜/ Library/Application Support/iPhone Simulator/[OS version]/Applications/[appGUID] /
如果您同时安装了以前的SDK,其3.1.x模拟器将继续将其数据保存在:
〜/ Library/Application Support/iPhone Simulator/User/Applications/[appGUID] /
适用于Xcode6和iOS8
〜/库/开发商/ CoreSimulator /设备/ [的DeviceID] /数据/容器/数据/应用/ [的AppID] /
Ser*_*ost 80
还有另一种(更快?)的方法来查找没有终端的应用数据的位置:
Cod*_*eef 78
找到了:
~/Library/Application Support/iPhone Simulator/User/
Run Code Online (Sandbox Code Playgroud)
Wag*_*agh 73
iOS 8 ~/Library/Developer/CoreSimulator/Devices/[Device ID]/data/Applications/[appGUID]/Documents /
Raf*_*ira 66
在狮子Users/[username]/Library
上隐藏着.
要在Finder中查看,请单击屏幕顶部的"开始"菜单,然后按住"alt"键以显示"库".
单击"库",您可以看到以前隐藏的库文件夹.
以前建议:
使用
chflags nohidden /users/[username]/library
Run Code Online (Sandbox Code Playgroud)
在终端中显示文件夹.
Lal*_*hna 41
在某个地方赶上一个断点.
输入po NSHomeDirectory()
在控制台窗口
(lldb)po NSHomeDirectory() /Users/usernam/Library/Developer/CoreSimulator/Devices/4734F8C7-B90F-4566-8E89-5060505E387F/data/Containers/Data/Application/395818BB-6D0F-499F-AAFE-068A783D9753
Pis*_*a46 32
使用Xcode 5,您可以使用以下代码:
#import <Foundation/NSFileManager.h>
Run Code Online (Sandbox Code Playgroud)
和:
NSString *homeDir = NSHomeDirectory();
NSLog(@"%@",homeDir);
Run Code Online (Sandbox Code Playgroud)
结果可能看起来像:
"/Users/<your user name>/Library/Application Support/iPhone Simulator/7.1/Applications/hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh"
Run Code Online (Sandbox Code Playgroud)
哪个hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh
是标识您的iOS应用的十六进制字符串.
awo*_*olf 30
看起来Xcode 6.0再次移动了这个位置,至少对于iOS 8模拟器而言.
〜/库/开发商/ CoreSimulator /设备/ [的DeviceID] /数据/容器/数据/应用/ [的AppID]
rus*_*hop 30
如果模拟器正在运行,您可以获得任何应用程序容器的路径:
xcrun simctl get_app_container booted <app bundle identifier>
Run Code Online (Sandbox Code Playgroud)
示例输出:
$ xcrun simctl get_app_container booted com.example.app
/Users/jappleseed/Library/Developer/CoreSimulator/Devices/7FB6CB8F-63CB-4F27-BDAB-884814DA6FE0/data/Containers/Bundle/Application/466AE987-76BC-47CF-A207-266E65E7DE0A/example.app
Run Code Online (Sandbox Code Playgroud)
"booted"可以替换simctl
为预期设备UDID的任何地方的大多数命令.
您可以查看设备列表,xcrun simctl list
并获取有关特定命令的帮助xcrun simctl help
.
更新:根据Xcode 8.3中的热门请求,您现在可以通过附加"app","data","groups"或应用程序组标识符来指定所需的容器类型.
要获取数据容器:
$ xcrun simctl get_app_container booted com.example.app data
Run Code Online (Sandbox Code Playgroud)
Shu*_*ndu 29
查找应用程序在模拟器中的位置的最简单方法之一.用户"NSTemporaryDirectory()"
脚步-
当应用程序在断点处停止时,在Xcode控制台中键入以下命令.
po NSTemporaryDirectory()
现在,您拥有临时文件夹的确切路径.您可以返回并查看所有与应用相关的文件夹.
希望这也有帮助.快乐编码:)
jos*_*ell 10
$ open ~/Library/Developer/CoreSimulator/Profiles/Runtimes
例如:iOS 13.0
,watchOS 6.0
到目前为止,这些占用的空间最多。每个可以高达 ~5GB
$ open ~/Library/Developer/CoreSimulator/Devices
例如:iPhone Xr
,iPhone 11 Pro Max
。这些通常每个 <15 mb。
模拟器分为运行时和设备。如果您运行,$ xcrun simctl list
您可以看到概览,但如果您想找到这些模拟器的物理位置,请查看我显示的这些目录。
删除您不支持的运行时是完全安全的。如果需要,您可以稍后重新安装这些。
小智 7
在iOS 5中:
/ Users/[User Name]/Library/Application Support/iPhone Simulator/5.0/Applications/[AppGUID] /
只需这样做.
NSString *docDirPath = [NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES)objectAtIndex:0];
NSLog(@"%@", docDirPath);
Run Code Online (Sandbox Code Playgroud)
你会得到这样的想法:
/用户/管理员/库/开发商/ CoreSimulator /设备/ 58B5B431-D2BB-46F1-AFF3-DFC789D189E8 /数据/集装箱/数据/应用/ 6F3B985F-351E-468F-9CFD-BCBE217A25FB /文档
去那里,无论XCode版本如何,您都会看到应用程序的文档文件夹.(在Finder中使用"转到文件夹..."命令并指定路径"〜/ library").
对于Xcode 4.6,它存储在以下路径中......
/ Users/[currentuser]/Library/Application Support/iPhone Simulator/6.1/Applications /
要以编程方式了解它,请使用以下代码
NSLog(@"path:%@",[[NSBundle mainBundle]bundlePath]);
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
150629 次 |
最近记录: |