Каков практический способ протестировать состояние "из дискового пространства" с помощью iOS Simulator?
Как я могу использовать iOS Simulator для моделирования состояния дискового пространства?
Ответ 1
Создайте образ небольшого диска:
hdiutil create -size 2m -fs HFS+ /tmp/2meg.dmg
Установите его в соответствующий каталог в вашем приложении для симулятора, например:
hdiutil attach /tmp/2meg.dmg -mountpoint /Users/.../Library/Developer/CoreSimulator/Devices/.../data/Applications/.../Library/Caches
Запустите приложение и выполните тесты. Это также можно сделать во время работы приложения. В этом случае вы, вероятно, не хотите монтировать его как каталог Caches
или Documents
потому что это скроет текущие файлы в этих папках. Вместо этого установите в подкаталог. Если это невозможно без изменения путей в вашем приложении, смонтируйте изображение в другом месте и скопируйте данные, прежде чем устанавливать его поверх непустого каталога.
Чтобы отключить:
hdiutil detach /Users/.../Library/Developer/CoreSimulator/Devi...
Однако обратите внимание, что операция отсоединения не выполняется, если точка монтирования перемещена. Это происходит постоянно, потому что Apple переименовывает каталоги симуляторов на iOS 8 каждый раз, когда приложение запускается. В этом случае используйте команду mount
чтобы найти устройство, которое вы установили, например /dev/disk3s1/Users/.../Library/...
, затем отключите образ диска, используя имя устройства, а не точку монтирования:
hdiutil detach disk3s1
Ответ 2
Это не практично на симуляторе (вам нужно будет заполнить свой Mac-диск). Лучший способ добиться этого теста - использовать фактическое устройство и заполнить музыку через iTunes и протестировать устройство.