Подтвердить что ты не робот

Скачайте и установите ipa с самостоятельного размещения на iOS

Мне нужно загрузить и установить ipa прямо из URL.

Я пробовал это:

NSURL *url = [NSURL URLWithString:@"https://myWeb.com/test.ipa"];
[[UIApplication sharedApplication] openURL:url];

Приложение запускает Safari, но появляется следующее сообщение:

Error Message "Download Failed, Safari cannot download this file."

Возможно ли это?

4b9b3361

Ответ 1

Чтобы распространять ваше приложение по эфиру (OTA, это означает, что без использования TestFlight или официального магазина приложений) вам может потребоваться создать 3 разных файла, а именно:

  • Файл .ipa(с использованием специального профиля подготовки)
  • index.html
  • manifest.plist

Вы можете использовать Beta Builder для создания этих файлов:

  • Архивируйте свою сборку.
  • Сохраните .ipa на рабочем столе.
  • Загрузите небольшую утилиту Beta Builder из здесь. Это выполняет большую часть требуемой задачи.
  • Откройте инструмент и выберите файл .ipa, затем укажите путь, по которому вы будете размещать сборку https://myWeb.com/MY_TEST_APP в бета-построителе.
  • Сгенерировать все файлы.
  • Теперь загрузите index.html, your_App.ipa и manifest.plist на ваш путь к серверу https://myWeb.com/MY_TEST_APP
  • Теперь поделитесь ссылкой index.html. После открытия этого файла вам будет предложено нажать "Установить".
  • Он установит your_App.ipa на ваше устройство.

Вы также можете сделать это более вручную.

index.html

<a href="itms-services://?action=download-manifest&url=https://myWeb.com/MY_TEST_APP/manifest.plist">Install App</a>

manifest.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>items</key>
    <array>
        <dict>
            <key>assets</key>
            <array>
                <dict>
                    <key>kind</key>
                    <string>software-package</string>
                    <key>url</key>
                    <string>http://YOUR_SERVER_URL/YOUR-IPA-FILE.ipa</string>
                </dict>
            </array>
            <key>metadata</key>
            <dict>
                <key>bundle-identifier</key>
                <string>com.yourCompany.productName</string>
                <key>bundle-version</key>
                <string>1.0.0</string>
                <key>kind</key>
                <string>software</string>
                <key>title</key>
                <string>YOUR APP NAME</string>
            </dict>
        </dict>
    </array>
</dict>
</plist>

Если приложение отказывается устанавливать или запускать, вам может потребоваться проверить следующие пункты:

  • Профиль подготовки, который вы использовали при компиляции/архивировании вашего приложения.
  • URL-адреса в index.html и manifest.plist
  • Возможно, файл plist должен размещаться на сервере HTTPS. Вы можете использовать Dropbox для этого, если это необходимо.
  • UUID вашего устройства может потребоваться зарегистрировать в Центре разработчиков Apple, если у вас нет лицензии Enterprise
  • Возможно, вам придется вручную включить доступ к приложению в настройках > Профили

Ответ 2

Более просто вы можете использовать DropBox для этого. Шаги в основном остаются прежними. Вы можете сделать следующее:

1) загрузите свой .ipa в dropBox, поделитесь ссылкой для этого .ipa

2) Вставьте общую ссылку для .ipa в файл manifest.plist, Загрузите файл манифеста в DropBox, снова поделитесь ссылкой для этого файла .plist

3) вставьте ссылку для этого Plist в файл index.html с подходящим тегом.

Поделитесь этим файлом index.html с любым, кто может нажать на URL-адрес и загрузить. или вы можете напрямую нажать URL.

Ответ 3

Да, сафари обнаружит *.ipa и попытается установить его, но ipa необходимо правильно подписать и разрешить только устройствам, чтобы установить его.

http://www.diawi.com - это сервис, который поможет вам в этом процессе.

Все это относится к распределению Ad-hoc, а не к производственным приложениям.

Дополнительная информация по ссылке ниже: Есть ли способ установить приложение iPhone через браузер?

Ответ 4

Ответ для учетной записи Enterprise с помощью Xcode8

  • Экспортируйте .ipa, установив флажок "с флажком манифеста plist" и предоставив требуемые ссылки.

  • Загрузите файл .ipa и .plist в то же место на сервере (которое вы указали при экспорте .ipa/, который упоминается в файле .plist).

  • Создайте ссылку для загрузки, как показано ниже. url должен ссылаться на ваше расположение файла .plist.

    itms-services://? action = download-manifest & url = https://yourdomainname.com/app.plist

  • Скопируйте эту ссылку и вставьте ее в браузер Safari в своем iphone. Он попросит установить: D

Создайте кнопку html, используя этот полный URL

Ответ 5

Существуют онлайн-инструменты, упрощающие этот процесс совместного использования, например https://abbashare.com или https://diawi.com Создайте файл ipa из xcode с профилем adhoc или inhouse и загрузите этот файл на этот сайт. Я предпочитаю abbashare, потому что сохраняю файл в вашем Dropbox, и вы можете удалить его, когда захотите

Ответ 6

Невозможно, если вам захочется напрямую загрузить и установить приложение с вашего сайта. Для предприятия существует другой способ развертывания и установки приложения в прямом эфире. Ваш URL должен указывать на веб-службу, в которой размещен файл манифеста plist в предопределенном формате, который требуется Apple. Эта служба должна вернуть URL-адрес файла манифеста, который затем можно использовать, как показано ниже:

NSString *urlString = // url string where your manifest.plist is deployed on your server.
NSURL *installationURL = [NSURL URLWithString:[NSString stringWithFormat:@"itms-services://?action=download-manifest&url=%@",[urlString stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]]];
[[UIApplication sharedApplication] openURL];

Надеюсь, это ответит на ваш вопрос.

Ответ 7

Создайте виртуальную машину с запущенной на ней Windows и загрузите файл в общую папку. :-D