Решение проблем с Ad Hoc Distribution под Windows

    Тема очень специфичная, поэтому надеюсь, что это кому-нибудь сэкономит время.

    Перед тем как отправить свое приложение в Apple Store, решил протестировать
    на друзьях, разослав им файл профайла и zip-архив приложения в формате Ad Hoc Distribution.

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


    Для пользователей Mac OS X все проходит без проблем, но вот Windows пользователям,
    iTunes сообщит, что не может проверить приложение. Что же не так?

    Оказалось, что если упаковывать приложение по мануалам, то есть используя Compress
    в меню Finder, то в архив включается resource fork.

    Проще говоря, это каталог вида "__MACOSX", который становится видимым после распаковки
    архива вручную. В Mac OS X есть встроенная поддержка resource fork и он не считается
    отдельной директорией, а вот в Windows все наоборот.

    Поэтому iTunes под Windows просто игнорирует zip-архивы, включающие resource fork,
    но есть два варианта решения:

    1. Распаковать zip-архив средствами Windows, удалить каталог "__MACOSX" и запаковать обратно
    2. Вручную создать zip-архив в Mac OS X с помощью консоли (zip -r ...)

    Все операции производить над каталогом приложения: MyCoolApp.app

    Update
    Для гиков есть еще 3-й вариант — создание пакета ipa вручную:
    1. Создаем каталог, в котором будем формировать архив, наример «tmp»
    2. Создаем в каталоге «tmp» подкаталог «Payload», куда копируем каталог приложения,
      например MyCoolApp.app
    3. Выбираем любую красивую картинку в формате png и копируем в каталог «tmp»
      под именем «iTunesArtwork», без расширения ".png"

    В итоге, должна получиться следующая структура каталога «tmp»:

    Payload/MyCoolApp.app
    iTunesArtwork

    Далее в консоли переходим в каталог «tmp» и исполняем команду:

    zip -r -y MyCoolApp.ipa .

    Не забудьте вместо MyCoolApp подставить имя вашего приложения.
    Поделиться публикацией
    Похожие публикации
    Никаких подозрительных скриптов, только релевантные баннеры. Не релевантные? Пиши на: adv@tmtm.ru с темой «Полундра»

    Зачем оно вам?
    Реклама
    Комментарии 4
    • 0
      Сегодня делал свой первый distribution-архив, ну и запаковал его по привычке muCommander'ом (не люблю finder, как и прочие древовидные файл-менеджеры =)) — так эта редиска почему-то не заархивировала линк на CodeResources, соответственно в аппстор архив не залился — пришлось перепаковывать finder'ом.
      • 0
        «Ad Hoc Distribution» — а что это за тип распространения?
        приложение ведь должно быть подписанным
        • 0
          Приложение подписано Distribution сертификатом и распространяется с Ad Hoc профайлом,
          в котором указан разрешенный список идентификаторов iPhone.
        • 0
          спасибо, добавил в мемориз=)

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