Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用iOS模拟器模拟磁盘空间不足的情况?_Ios_Iphone - Fatal编程技术网

如何使用iOS模拟器模拟磁盘空间不足的情况?

如何使用iOS模拟器模拟磁盘空间不足的情况?,ios,iphone,Ios,Iphone,使用iOS模拟器测试“磁盘空间不足”情况的实用方法是什么?这在模拟器上不实用(您必须填满Mac的磁盘)。实现此测试用例的最佳方法是使用实际设备,通过iTunes填充音乐并在设备上测试。创建一个小磁盘映像: hdiutil create -size 2m -fs HFS+ /tmp/2meg.dmg 将其装载到模拟器应用程序中的相关目录,例如: hdiutil attach /tmp/2meg.dmg -mountpoint /Users/.../Library/Developer/CoreSi

使用iOS模拟器测试“磁盘空间不足”情况的实用方法是什么?

这在模拟器上不实用(您必须填满Mac的磁盘)。实现此测试用例的最佳方法是使用实际设备,通过iTunes填充音乐并在设备上测试。

创建一个小磁盘映像:

hdiutil create -size 2m -fs HFS+ /tmp/2meg.dmg
将其装载到模拟器应用程序中的相关目录,例如:

hdiutil attach /tmp/2meg.dmg -mountpoint /Users/.../Library/Developer/CoreSimulator/Devices/.../data/Applications/.../Library/Caches
运行应用程序并执行测试。这也可以在应用程序运行时完成。在这种情况下,您可能不希望直接将其装载为
缓存
文档
目录,因为这样会隐藏这些文件夹中的当前文件。改为装载到子目录。如果不更改应用程序中的路径就很难做到这一点,请将图像装载到其他位置并复制数据,然后再将其装载到非空目录的顶部

要卸载:

hdiutil detach /Users/.../Library/Developer/CoreSimulator/Devi...
但是,请注意,如果移动装载点,分离操作将失败。这种情况经常发生,因为每次运行应用程序时,苹果都会在iOS 8上重命名模拟器目录。在这种情况下,请使用
mount
命令查找已装载的设备,例如
/dev/disk3s1/Users/../Library/..
,然后使用设备名称而不是装载点卸载磁盘映像:

hdiutil detach disk3s1

您可以访问下面的相关目录
Library/Developer/CoreSimulator/Devices
;并在设备映像上安装有限大小的分区,例如制作磁盘映像,将原始设备的内容复制到磁盘映像中,然后重试。这不是一个答案,因为这是一个很大的努力,不符合实际情况的设备上你知道一个快速的方法来做到这一点吗?我有一台全新的iPad,作为测试设备,需要相当快地填充25GB。你的意思是快速填充音乐?事实上,我可能也会尝试视频。是的,我就是这么做的,只是打开相机,让它运行几个小时。我写了一个应用程序,可以很快填满存储空间,适合任何需要的人:)@LucèBrùlè感谢这个应用程序,它以30MB/s左右的速度完成了这个任务。另外,请注意,
mkfile
实用程序(在Mac OS X上)有助于我用自定义大小的文件填充空白空间。回答得很好。另外,至少在Xcode 9中,在同一个模拟器中再次运行应用程序不会更改目录名,因此您可以在多次运行时使用相同的装载。这是否会在磁盘空间不足时触发iOS运行其逻辑?也就是说,向应用程序发送警告,从缓存目录中删除文件,等等。不确定是否遗漏了某些内容。装载磁盘映像如何帮助模拟磁盘空间不足的情况?