在为iPhone模拟器构建应用程序时,有没有简单的方法清理Xcode部署应用程序的目录?如果需要,在启动时会将sqlite数据库复制到文档文件夹中。问题是,如果我更改了架构,则不会复制新的数据库,因为已经存在一个。
理想情况下,每次构建时都会删除先前的内容。这是可能的吗,还是我必须手动执行此操作?
在为iPhone模拟器构建应用程序时,有没有简单的方法清理Xcode部署应用程序的目录?如果需要,在启动时会将sqlite数据库复制到文档文件夹中。问题是,如果我更改了架构,则不会复制新的数据库,因为已经存在一个。
理想情况下,每次构建时都会删除先前的内容。这是可能的吗,还是我必须手动执行此操作?
xcrun simctl list | grep -oh '[A-Z0-9]\{8\}-[A-Z0-9]\{4\}-[A-Z0-9]\{4\}-[A-Z0-9]\{4\}-[A-Z0-9]\{12\}' | xargs -I{} xcrun simctl erase {}
对于 .bash_profile
alias cleansim="xcrun simctl list | grep -oh '[A-Z0-9]\{8\}-[A-Z0-9]\{4\}-[A-Z0-9]\{4\}-[A-Z0-9]\{4\}-[A-Z0-9]\{12\}' | xargs -I{} xcrun simctl erase {}"
Xcode 6及以上版本:
xcrun simctl erase <sim udid>
<- 重置模拟器。
清除 Xcode 缓存;
Command+Option+Shift+K
Command+Shift+K
(同时使用它们,因为它们具有不同的功能)
清除 Derived Data 内容;
菜单栏 -> 窗口 -> 组织器 -> 项目 -> 选择您的项目
右侧窗格显示文件夹名称,右侧的删除按钮允许您删除所有派生数据内容。
清除模拟器缓存;
菜单栏 -> iOS 模拟器 -> 重置内容和设置
正如我在验证答案的评论中解释的那样:
我正在测试添加和删除日历订阅。在真实设备上,您可以在设置、帐户中删除日历订阅,但是在iOS模拟器中不存在此菜单,我也不想重置整个模拟器。
所以我最终使用git本地版本控制我的设备文件夹,并执行以下命令来删除添加的日历订阅:
$ git reset HEAD --hard
$ git clean -f
~/Library/Developer/CoreSimulator/Devices/
中识别您的设备,进入该目录,然后使用git init
创建一个git存储库git commit -a "Message"
git reset --hard HEAD
git commit
之后进行的更改都将消失。在XCode中,转到“窗口”菜单选项,选择“设备”,然后您可以删除不再需要的设备。
使用Xcode 14.1和iPhone14模拟器,我像在iPhone上一样删除了应用程序。这将删除应用程序中的所有数据。当我重新构建时,Documents文件夹中的所有数据都被删除了。
针对 Xcode <= 5
我在我的 ~/.bash_profile
中添加了以下内容
alias cleansim='rm -r ~/Library/Application\ Support/iPhone\ Simulator/5.1/Applications/*'
它只是在模拟器上销毁所有应用程序。