Как принудительно обновить настройки приложения? - PullRequest
4 голосов
/ 28 января 2010

Приложение Settings.bundle содержит номер версии , которая автоматически генерируется во время сборки. Из журнала сборки я вижу, что там записано новое значение, также при просмотре самого файла в MacOS X Finder я вижу правильное обновленное значение.

Настройки в симуляторе iPhone или в реальном iPhone показывает мне старое значение . Удаление приложения и переустановка - пока единственный способ, которым мне удалось получить новое обновленное значение видимым.

Вопрос: как заставить приложение «Настройки iPhone» читать мой новый обновленный файл пакета?

Некоторая справочная информация, которая может или не может быть связана: я устанавливаю приложение только через XCode и в симулятор, и в iPhone. Это проблема? Просто нашел это в Apple Docs , не уверен, что на самом деле он говорит. Кажется, противоречит самому себе (последняя глава) ...

Каждый раз, когда вы переустанавливаете свое приложение, iPhone OS выполняет чистую установку, которая удаляет все предыдущие настройки. Другими словами, сборка или запуск вашего приложения из XCode всегда устанавливает новую версию, заменяя любое старое содержимое. Чтобы проверить изменения предпочтений между последовательными выполнениями, вы должны запускать ваше приложение непосредственно из интерфейса симулятора, а не из XCode.

То есть Xcode всегда заменяет старый контент, но для проверки изменений я не могу использовать Xcode? Что это было? Выполнено как (после установки через Xcode), так и не увидели новых значений в настройках. Есть идеи, как это на самом деле работает? Всегда ли нужно выполнять установку без Xcode?

Ответы [ 4 ]

5 голосов
/ 28 января 2010

Попробуйте очистить и построить. Кажется, что xcode кэширует даты и не замечает изменений, которые вносит ваш скрипт. У меня были подобные вещи, чистые всегда исправляют это, но это действительно неприятность.

1 голос
/ 29 мая 2013

Не забудьте закрыть приложение Настройки, работающее в фоновом режиме на устройстве. Похоже, что настройки кэшируют настройки во время работы, но извлекают обновленные значения при перезапуске приложения настройки.

0 голосов
/ 22 апреля 2011

В моем случае, похоже, что мой измененный root.plist, созданный / отредактированный с помощью редактора списка свойств Xcode, просто не был сохранен.

Не было никаких проблем с копированием пакета настроек на iPad. Быстрое cmd-S с последующим перестроением и переходом / отладкой обновленных настроек на iPad сразу - не требуется никакого удаления / переустановки приложения. Вы могли бы подумать, что по крайней мере будет предупреждение о том, что он не сохранен из XCode, как всегда для исходных файлов кода.

0 голосов
/ 17 сентября 2010

Я только что попробовал это, и это сработало. В Xcode перейдите по ссылке: Окно-> Органайзер , затем просмотрите установленные приложения на подключенном iPad / iPhone, удалите приложение, затем перекомпилируйте и запустите приложение на устройстве. Я думаю, что проблема связана с кешем iPad.

...