iPhone App Минус App Store? - PullRequest
       103

iPhone App Минус App Store?

197 голосов
/ 01 сентября 2008

Если я создаю приложение на своем Mac, могу ли я как-нибудь запустить его на iPhone, не заходя в магазин приложений?

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

Ответы [ 10 ]

187 голосов
/ 01 сентября 2008

Официальная программа разработчика

Для стандартного iPhone вам нужно будет заплатить 99 долларов США в год, чтобы стать участником программы для разработчиков. Затем вы можете использовать систему adhoc для установки приложения на 100 устройств. У программы разработчика есть детали, но она включает добавление UUID для каждого из устройств в ваш пакет приложений. UUID можно получить с помощью Ad Hoc Helper , доступного в App Store. Дополнительные сведения об этом методе см. В бета-тестировании Крэйга Хокенберри на iPhone 2.0 , статья

.

взломанный iPhone

Для взломанных iPhone вы можете использовать следующий метод, который я лично протестировал, используя образец приложения AccelerometerGraph на iPhone OS 3.0.

Создать самоподписанный сертификат

Сначала вам нужно будет создать самозаверяющий сертификат и установить патч на свой iPhone SDK, чтобы разрешить использование этого сертификата:

  1. Запустить связку ключей Access.app. Если элементы не выбраны, в меню «Связка ключей» выберите «Ассистент сертификатов», затем «Создать сертификат».

    Имя: iPhone Developer
    Тип сертификата: Кодовая подпись
    Позвольте мне изменить значения по умолчанию: Да

  2. Нажмите Продолжить

    Срок действия: 3650 дней

  3. Нажмите Продолжить

  4. Очистить поле адреса электронной почты.

  5. Нажмите Продолжить до завершения.

    Вы должны увидеть «Этот корневой сертификат не является доверенным». Это ожидается.

  6. Установите для iPhone SDK разрешение на использование самозаверяющего сертификата:

    sudo / usr / bin / sed -i .bak 's / XCiPhoneOSCodeSignContext / XCCodeSignContext /' /Developer/Platforms/iPhoneOS.platform/Info.plist

    Если у вас открыт Xcode, перезапустите его, чтобы изменения вступили в силу.

Развертывание вручную по WiFi

Следующие шаги требуют, чтобы openssh и uikittools были установлены в первую очередь. Замените jasoniphone.local именем хоста целевого устройства. После установки SSH обязательно установите свой собственный пароль для пользователей mobile и root.

Чтобы вручную скомпилировать и установить приложение на телефон как системное приложение (в обход системы установки Apple):

  1. Проект, Установка активного SDK, Устройство и Настройка конфигурации активной сборки, Выпуск.

  2. Скомпилируйте ваш проект как обычно (используя Build, а не Build & Go).

  3. В каталоге build/Release-iphoneos у вас будет комплект приложений. Используйте предпочитаемый метод для передачи этого в / Applications на устройстве.

    scp -r AccelerometerGraph.app root@jasoniphone:/Applications/

  4. Сообщите SpringBoard, что установлено новое приложение:

    ssh mobile@jasoniphone.local uicache

    Это нужно делать только при добавлении или удалении приложений. Обновленные приложения просто необходимо перезапустить.

Чтобы облегчить себе жизнь во время разработки, вы можете настроить аутентификацию по ключу SSH и добавить эти дополнительные шаги в качестве пользовательского этапа сборки в своем проекте.

Обратите внимание, что если вы хотите удалить приложение позже, вы не можете сделать это через стандартный интерфейс SpringBoard, и вам нужно будет использовать SSH и обновить SpringBoard:

ssh root@jasoniphone.local rm -r /Applications/AccelerometerGraph.app &&
ssh mobile@jasoniphone.local uicache
18 голосов
/ 01 сентября 2008

Да, присоединившись к Программе разработчиков iPhone и заплатив Apple $ 99, вы можете предоставлять свои приложения на 100 устройствах iOS.

14 голосов
/ 20 апреля 2010
  • Создайте свое приложение
  • Загрузить на взломанный сайт
  • (Если ваше приложение достаточно хорошее), крэк версия будет опубликована через несколько минут и готова для скачивания всеми; -)
8 голосов
/ 12 декабря 2010

С помощью этого поста я создал скрипт, который будет устанавливаться через приложение Installous для быстрого развертывания:

# compress application.
/bin/mkdir -p $CONFIGURATION_BUILD_DIR/Payload
/bin/cp -R $CONFIGURATION_BUILD_DIR/MyApp.app $CONFIGURATION_BUILD_DIR/Payload
/bin/cp iTunesCrap/logo_itunes.png $CONFIGURATION_BUILD_DIR/iTunesArtwork
/bin/cp iTunesCrap/iTunesMetadata.plist $CONFIGURATION_BUILD_DIR/iTunesMetadata.plist

cd $CONFIGURATION_BUILD_DIR

# zip up the HelloWorld directory

/usr/bin/zip -r MyApp.ipa Payload iTunesArtwork iTunesMetadata.plist

Чего не хватает в посте, указанном выше, это iTunesMetadata. Без этого Installous не будет правильно устанавливать приложения. Вот пример iTunesMetadata:

<?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>appleId</key>
    <string></string>
    <key>artistId</key>
    <integer>0</integer>
    <key>artistName</key>
    <string>MYCOMPANY</string>
    <key>buy-only</key>
    <true/>
    <key>buyParams</key>
    <string></string>
    <key>copyright</key>
    <string></string>
    <key>drmVersionNumber</key>
    <integer>0</integer>
    <key>fileExtension</key>
    <string>.app</string>
    <key>genre</key>
    <string></string>
    <key>genreId</key>
    <integer>0</integer>
    <key>itemId</key>
    <integer>0</integer>
    <key>itemName</key>
    <string>MYAPP</string>
    <key>kind</key>
    <string>software</string>
    <key>playlistArtistName</key>
    <string>MYCOMPANY</string>
    <key>playlistName</key>
    <string>MYAPP</string>
    <key>price</key>
    <integer>0</integer>
    <key>priceDisplay</key>
    <string>nil</string>
    <key>rating</key>
    <dict>
        <key>content</key>
        <string></string>
        <key>label</key>
        <string>4+</string>
        <key>rank</key>
        <integer>100</integer>
        <key>system</key>
        <string>itunes-games</string>
    </dict>
    <key>releaseDate</key>
    <string>Sunday, December 12, 2010</string>
    <key>s</key>
    <integer>143441</integer>
    <key>softwareIcon57x57URL</key>
    <string></string>
    <key>softwareIconNeedsShine</key>
    <false/>
    <key>softwareSupportedDeviceIds</key>
    <array>
        <integer>1</integer>
    </array>
    <key>softwareVersionBundleId</key>
    <string>com.mycompany.myapp</string>
    <key>softwareVersionExternalIdentifier</key>
    <integer>0</integer>
    <key>softwareVersionExternalIdentifiers</key>
    <array>
        <integer>1466803</integer>
        <integer>1529132</integer>
        <integer>1602608</integer>
        <integer>1651681</integer>
        <integer>1750461</integer>
        <integer>1930253</integer>
        <integer>1961532</integer>
        <integer>1973932</integer>
        <integer>2026202</integer>
        <integer>2526384</integer>
        <integer>2641622</integer>
        <integer>2703653</integer>
    </array>
    <key>vendorId</key>
    <integer>0</integer>
    <key>versionRestrictions</key>
    <integer>0</integer>
</dict>
</plist>

Очевидно, замените все экземпляры MyApp именем вашего приложения, а MyCompany - названием вашей компании.

По сути, он будет установлен на любое взломанное устройство с установленным Installous. После настройки это приводит к очень быстрому развертыванию, так как его можно установить из любого места, просто загрузите его на веб-сайт своей компании, загрузите файл прямо на устройство и скопируйте / переместите в ~/Documents/Installous/Downloads.

7 голосов
/ 25 августа 2015

С выходом Xcode 7 теперь можно устанавливать приложения на свои устройства без лицензии разработчика Apple, поэтому теперь можно пропустить магазин приложений, и вам не нужно делать джейлбрейк устройства.

Теперь каждый может загрузить свое приложение на свое устройство Apple.

Xcode 7 и Swift теперь упрощает создание приложений и их запуск прямо на своих устройствах Apple. Просто войдите, используя свой Apple ID, и превратить вашу идею в приложение, которое вы можете прикоснуться к вашему iPad, iPhone или Apple Watch. Скачайте бета-версию Xcode 7 и попробуйте сами сегодня. Участие в программе не требуется.

Цитируется из: https://developer.apple.com/xcode/

Обновление:

XCode 7 теперь выпущен:

Бесплатная разработка на устройстве Теперь каждый может запустить и протестировать собственное приложение на устройстве - бесплатно. Вы можете запускать и отлаживать свои собственные творения на Mac, iPhone, iPad, iPod touch или Apple Watch без комиссии и программы, чтобы присоединиться. Все, что вам нужно сделать, это ввести свой бесплатный Apple ID в Xcode. Вы даже можете использовать тот же Apple ID, который вы уже использовали для приложения Магазин или iTunes. Как только вы усовершенствовали свое приложение, разработчик Apple Программа может помочь вам получить его в App Store.

См. Запуск приложения на устройствах для получения подробной информации о установка и запуск на устройствах.

4 голосов
/ 20 ноября 2008

Стоит отметить, что если вы пойдете по джейлбрейкнутому пути, вполне возможно (вероятно?), Что обновление iPhone OS убьет вашу способность запускать эти приложения. Я бы пошел по официальному маршруту и ​​заплатил бы 99 долларов, чтобы получить разрешение. Помимо того, что вам не нужно беспокоиться о том, что ваши приложения забиты, у вас также есть возможность (по вашему выбору) выпустить свои приложения в магазине.

2 голосов
/ 22 июля 2011

После копирования приложения на iPhone способом, описанным @Jason Wegetarian, убедитесь, что приложение "chmod + x", иначе оно не запустится.

1 голос
/ 20 апреля 2010

Если вы исправите /Developer/Platforms/iPhoneOS.platform/Info.plist, а затем попытаетесь отладить приложение, работающее на устройстве, используя реальный профиль обеспечения разработки от Apple, оно, вероятно, не будет работать. Симптомами являются странные сообщения об ошибках от com.apple.debugserver, и вы можете использовать любой идентификатор пакета без получения ошибки при сборке в Xcode. Решение - восстановить Info.plist.

1 голос
/ 06 января 2010

* Изменения / Примечания, чтобы сделать эту работу для Xcode 3.2.1 и iPhone SDK 3.1.2

Развертывание вручную по WiFi

2) Обязательно перезапустите Xcode после изменения Info.plist

3) Команда "uicache" не найдена, использование killall -HUP SpringBoard работало нормально для меня.

Кроме того, я могу подтвердить, что это прекрасно работает.

Пользователи Mac, использующие PwnageTool 3.1.4, отлично работали для Jailbreaking (DL через торрент).

0 голосов
/ 10 сентября 2016

Вы можете использовать AppBox , Mac-приложение, которое использует вашу учетную запись Dropbox для распространения специальных и корпоративных приложений, если вы хотите установить их из любого другого браузера.

https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessInstallation/releases


Опции

Архивация и загрузка IPA

  • Просто выберите Project / Workspace в архив -> make ipa -> upload ipa -> send mail -> и выключение mac

Загрузить только IPA

  • Просто выберите файл IPA, чтобы загрузить ipa -> отправить почту -> и shutdown mac

Feature

  • Keep Same Link
    • Эта функция будет сохранять тот же короткий URL для всех будущих ipa, загруженных с тем же идентификатором пакета.
    • Если эта опция включена, вы также можете загрузить предыдущую сборку с тем же URL.
  • Авто E-Mail Ссылка для распространения приложения
  • Автоотключение Mac после распространения
  • Максимальный размер загрузки => Равно вашему хранилищу учетной записи Dropbox
  • Срок действия загруженного приложения => Пока вы не удалите из Dropbox
  • Установок в приложении => Неограниченно
  • Приборная панель *

    * Будет доступно в следующей версии


AppBox против Diawi

Скриншот

Загрузить IPA

Архивация и загрузка IPA

Загрузка IPA

Попробуй здесь https://github.com/vineetchoudhary/AppBox-iOSAppsWirelessInstallation/releases

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...