Сбой установки (OTA) для приложения iOS8 с использованием URL-адреса itms-сервисов
Для всех предыдущих версий iOS я использовал URL-адрес itms-services: // для установки тестовых приложений iOS по беспроводной сети (OTA). Теперь все мои устройства с iOS8 дают сбой при попытке установить приложения с использованием этого подхода. Пример URL:
itms-services://?action=download-manifest&url=https://myWebsite/myApp/myApp.plist
Краткое изложение проблемы:
- Браузер Safari, используемый для запуска установки с веб-страницы, не выходит на главный экран, показывая установку приложения, как раньше в предыдущих версиях iOS
- Приложение никогда не устанавливается успешно. Он устанавливается, но остается серым значком, и приложение не запускается.
- Эта проблема не возникает на существующих устройствах iOS7 с одинаковым URL.
5 ответов
Это похоже на ошибку в Beta5 и GM-версиях iOS8.
В Buildozer мы нашли обходной путь: измените идентификатор пакета приложения в файле манифеста. (Подробнее: https://buildozer.io/ios8)
Обходной путь, который не включает изменение файлов манифеста, заключается в восстановлении всего устройства из резервной копии, однако мы считаем, что манифест манифеста менее разрушителен для пользователей.
Этот ответ помог мне решить проблему. Похоже, что для iOS8 вы должны включить в assets
ключ манифеста .plist
подать display-image
а также full-size-image
ключи. Они были доступны в Xcode 5 при сохранении архива для корпоративного и дополнительного развертывания, но не обязательны.
Я создал gist на github с шаблоном для файла install-manifet.plist. Оригинальный пост доступен на http://www.informit.com/articles/article.aspx?p=1829415&seqNum=16.
Насколько нам известно, эта проблема все еще не решена в iOS 8.1, и мы обнаружили, что это решение вызовет некоторый побочный эффект. После iOS 7.0.x устройства используют этот метод для установки приложений inHouse, хотя приложение установлено успешно, но на домашнем экране остался черный квадрат, и его нельзя удалить.
Вы должны разделить метод установки между iOS8 и другими версиями iOS, что означает, что вы меняете метод установки в iOS8 и сохраняете оригинальный метод установки в другой версии.
У меня такая же проблема. В моем случае проблема была исправлена, когда:
- Плист был подан из HTTPS
- IPA обслуживался по HTTPS из того же домена, что и plist
- полноразмерное изображение и отображаемое изображение присутствуют в списке
У нас была такая же проблема. Нашей причиной было то, что TestFlight ранее установил пакет. Кажется, что у TestFlight (есть) установлен профиль, и только он может обновлять приложения, даже если они были удалены и удалены.
Обходной путь должен был добавить некоторый суффикс к идентификатору пакета в списке.
Это, конечно, вызвало еще одну проблему: вторичный значок показывался до тех пор, пока загрузка не была завершена, а IPA не был распакован и сопоставлен с приложением, уже имеющимся на устройстве.
БОЛЬШОЕ УВЕДОМЛЕНИЕ: Это проблема только с iOS8, так что вам лучше проверять user-agent во время загрузки. Это будет itunesd и будет содержать точную версию iOS.