Я делаю свое первое приложение для iOS. И у меня есть вопрос. В моем приложении я хочу сохранить текущее состояние приложения: уровни завершены, достигнута оценка, деньги, покупки в приложении и т. Д. В настройке. Проблема в том, как я могу разместить этот слой так, чтобы, если пользователь обновляет приложение, он/она не потеряет эти настройки. Я читал о песочнице приложения, но я не понимаю, как это работает, и как я могу управлять этим из Xcode.Как обновить приложение iOS за исключением файла
ответ
Вы должны сохранить эти настройки в NSUserDefaults. Они сохраняются при установке новых версий приложений, поэтому у вас не будет никаких проблем.
Две точки:
а) При обновлении приложения после того, как его в магазине приложений, представив новую версию одного и того же приложения файлы, созданные в старой версии не будут потеряны. Таким образом, вы можете хранить все, что захотите, в каталогах документов или библиотек приложения и ожидать, что он будет оставаться после обновления. Каталог Library/Caches не будет скопирован или восстановлен iTunes, поэтому не помещайте там что-либо, что вы не можете воссоздать. Если вы отправляете другую версию приложения (а не обновление, а новое приложение, поэтому у вас есть два отдельных приложения в магазине приложений, возможно, бесплатные и оплаченные), я не знаю, для чего я знаю, для новой версии, чтобы добраться до файлы, созданные первой версией.
b) Пользователю легко читать, удалять или изменять любые файлы, созданные в документах/или библиотеке /. Это можно сделать с помощью приложения на его Mac, например iExplorer (можно загрузить с сайта macroplant.com). Поэтому имейте в виду, что если файл является удобочитаемым человеком, который является файлом .plist, пользователь может изменить его, чтобы улучшить свой счет, получить больше расходных материалов или что-то еще. Вы можете предотвратить это, зашифровав данные или каким-то образом затеняя смысл, или с помощью какой-либо схемы контрольной суммы, чтобы вы могли, по крайней мере, обнаружить, что она была изменена. Любая из этих мер, конечно, сопряжена с осложнениями и, возможно, не стоит того.
BTW ... если вы разрабатываете приложение, которое использует файлы данных, iExplorer - отличный инструмент для отладки. Я не заинтересован в этом, кроме того, что я научился использовать его и хочу, чтобы он продолжал поддерживаться. Вероятно, есть и другие приложения, которые делают то же самое, но это отлично работает и быстро и просто в использовании.
- 1. IOS Segue - Нагрузочный приложение из-за неперехваченного исключением «NSGeneric Exception»
- 2. Приложение iOS в продаже, отлично работает, за исключением Гонконга
- 3. Try за исключением открытия файла
- 4. Обновить весь документ за исключением указанных полей
- 5. Обновить таблицу за исключением одной ячейки
- 6. Добавление папки проекта, за исключением файла Docker
- 7. Нагрузочное приложение из-за неперехваченное исключением «NSInvalidArgumentException
- 8. Попробуйте - За исключением нескольких ошибок, за исключением
- 9. iOS - Как обновить приложение после передачи
- 10. Как обновить телефон гэп-приложение (IOS)
- 11. Нагрузочного приложение из-за неперехваченное исключением «UIViewControllerHierarchyInconsistency»,
- 12. подсчет слов за исключением пробелов из файла
- 13. за исключением определенного типа файла в муравья
- 14. За исключением исполняемого файла в Tar
- 15. За исключением файла при сжатии в SSIS
- 16. Приложение iOS Как обновить файл через iTunes
- 17. Как автоматически обновить приложение iOS для приложения
- 18. iOS: Как заполнить прямоугольник, за исключением одной области?
- 19. Веб-приложение Netbeans - за исключением JAR при построении WAR
- 20. За исключением UIActivities от UIActivityViewController
- 21. Удалить расширение файла php, за исключением одного файла
- 22. Как выполнить команду за исключением
- 23. Как высмеивать бросок за исключением?
- 24. Как добавить за исключением инициализатора?
- 25. Обновить все строки, за исключением столбца идентификации в Access 2013
- 26. Как выполнить преобразование svn локально, за исключением одного файла
- 27. основных данные - Нагрузочное приложение из-за неперехваченное исключением «NSUnknownKeyException»
- 28. Python Try/За исключением нескольких, за исключением блоков
- 29. Попробуйте и за исключением всех ошибок, за исключением sys.exit()
- 30. Как отправить в AppStore, за исключением моего приложения Watch?
Могу ли я это сделать иначе? – kommancs96
Почему вы хотите это сделать иначе – Jona
Это самый простой способ - почему у вас есть проблема в этом? – TheEye