2012-11-16 2 views
2

У меня есть приложение для iPad, которое распространяется на клиента через OTA Enterprise Distribution. Приложение распространяется и устанавливается без проблем на iPads клиента. Проблема возникает, когда они пытаются установить более новую версию приложения.Приложение iOS не обновляется должным образом через OTA Enterprise Distribution

Любые новые ресурсы, которые были добавлены в комплект приложения в новой версии, не могут быть доступны в последней версии; клиент должен сначала удалить старое приложение и переустановить его с новой версией, чтобы увидеть новые ресурсы в комплекте приложений.

Файл .plist в каждой из сборщиков указывает другое число для версии пакета, поэтому тот же набор приложений не должен использоваться в новой сборке.

Я не могу найти решение для этого в любом месте. Кто-нибудь еще сталкивается с этой проблемой? Есть ли у вас предложения по тому, как я могу это решить?

ответ

1

Оказывается, проблема не в комплекте приложений. Некоторые ресурсы сохранялись в папке «Документы» (поскольку новые версии были загружены через приложение), и путь к файлу был сохранен в пользовательских настройках по умолчанию. Когда приложение было обновлено с новой версией, путь к файлу становится недействительным, потому что недавно обновленное приложение имеет другой тип uid в пути, поэтому ресурсы, хранящиеся в папке «Документы», не были найдены.

Я изменил код, чтобы всегда захватывать путь к файлу из NSDocumentsDirectory вместо хранения и захвата его из пользовательских настроек по умолчанию; Я не уверен, почему он был первоначально реализован для хранения пути к файлу.

+0

Итак, обновленное приложение имеет новый указатель в корневой папке? –

+0

Привет, Герман, прошло некоторое время с тех пор, как я работал над этим проектом, но я считаю, что это так. У новой версии приложения был другой идентификатор, поэтому любые старые пути, которые ссылались на этот идентификатор, не нашли бы старые ресурсы. – SeanK

+0

yep, определенно проблема. Спасибо, решил для меня давний вопрос. –