iOS Mobile Инженер

iOS Mobile Инженер

Роадмап навыков для прокачки

Apple Developer Account и Team

iOS Tooling and DeliveryCode Signing & ProvisioningCertificates

Основная идея

Apple Developer Account — платная подписка ($99/год), необходимая для публикации приложений в App Store и тестирования на реальных устройствах. Team — это организация разработчиков, объединённых под одним аккаунтом.

Ключевые аспекты

  • Individual Account — для одного разработчика, приложения публикуются от личного имени
  • Organization Account — для компаний, требуется D-U-N-S номер
  • Team ID — уникальный 10-символьный идентификатор команды
  • Роли в команде — Account Holder, Admin, App Manager, Developer, Marketing

Плюсы Developer Account

  • Доступ к бета-версиям iOS и Xcode
  • Публикация в App Store и TestFlight
  • Создание сертификатов и Provisioning Profiles
  • Доступ к App Store Connect

Минусы

  • Ежегодная плата $99 (или $299 для Enterprise)
  • Сложная процедура регистрации для организаций
  • Привязка к конкретному Apple ID

Частые ошибки на собеседованиях

  • Путают Individual и Organization аккаунты — Organization требует D-U-N-S
  • Не знают про Free tier — можно тестировать на устройстве без оплаты, но нельзя публиковать
  • Забывают про ежегодное продление — приложения удаляются при просрочке

Введение и проблематика

Apple Developer Program — официальная программа для разработчиков, желающих публиковать приложения в App Store. Без членства в программе невозможно распространять приложения за пределами симулятора и собственных устройств.

Бесплатный Apple ID позволяет разрабатывать и тестировать приложения на своих устройствах, но с ограничениями: сертификаты действуют 7 дней, нельзя использовать Push Notifications, In-App Purchases и другие возможности.

Зачем нужен Developer Account

  • Публикация приложений в App Store
  • Доступ к TestFlight для бета-тестирования
  • Создание Provisioning Profiles для всех типов дистрибуции
  • Использование расширенных возможностей (Push, iCloud, Sign in with Apple)

Типы аккаунтов

Individual (Индивидуальный)

  • Стоимость: $99/год
  • Для одного разработчика или фрилансера
  • Приложения публикуются от личного имени
  • Регистрация за несколько минут

Organization (Организация)

  • Стоимость: $99/год
  • Для компаний и организаций
  • Требуется D-U-N-S номер (уникальный идентификатор бизнеса)
  • Приложения публикуются от имени компании
  • Поддержка нескольких разработчиков с разными ролями

Enterprise (Корпоративный)

  • Стоимость: $299/год
  • Для внутренней дистрибуции приложений в крупных компаниях
  • Приложения не публикуются в App Store
  • Требуется штат от 100 сотрудников
⚠️

Enterprise аккаунт нельзя использовать для публичного распространения приложений — это нарушение условий Apple и приведёт к блокировке аккаунта.


Структура Team

Team ID

Team ID — уникальный 10-символьный идентификатор вашей команды. Используется в:

  • Bundle Identifier (например, com.TEAMID.appname)
  • Provisioning Profiles
  • Entitlements
  • App Groups

Роли в команде

РольПрава
Account HolderПолный контроль, управление оплатой, передача аккаунта
AdminУправление пользователями, сертификатами, приложениями
App ManagerУправление приложениями и TestFlight
DeveloperДоступ к сертификатам и Provisioning Profiles
MarketingТолько просмотр аналитики и метаданных

Регистрация Developer Account

Шаг 1: Создание Apple ID

Если у вас нет Apple ID, создайте его на appleid.apple.com. Используйте рабочий email для Organization аккаунта.

Шаг 2: Включение двухфакторной аутентификации

Apple требует 2FA для Developer Account. Включите её в настройках Apple ID.

Шаг 3: Регистрация в Developer Program

Перейдите на developer.apple.com/programs/enroll/ и выберите тип аккаунта.

Шаг 4: Для Organization — получение D-U-N-S

Если у компании нет D-U-N-S номера, запросите его бесплатно через Apple. Процесс занимает до 2 недель.

Шаг 5: Оплата и активация

После проверки данных оплатите подписку. Активация происходит в течение 48 часов.


Управление командой

Добавление участников

  1. Войдите в App Store Connect
  2. Перейдите в Users and Access
  3. Нажмите + и введите Apple ID нового участника
  4. Выберите роль и приложения, к которым будет доступ

Приглашение в Xcode

После добавления в команду разработчик сможет:

  • Видеть Team в настройках Signing & Capabilities
  • Скачивать сертификаты и Provisioning Profiles
  • Загружать билды в App Store Connect

Пограничные кейсы

🚫

При смене Account Holder убедитесь, что новый владелец имеет доступ к методу оплаты. Неоплаченный аккаунт приведёт к удалению приложений из App Store.

Что происходит при истечении подписки

  • Приложения удаляются из App Store через 30 дней
  • Существующие пользователи сохраняют установленные приложения
  • Сертификаты и Provisioning Profiles перестают работать
  • Невозможно загружать новые билды

Миграция между аккаунтами

Приложения можно перенести между аккаунтами через App Store Connect → App Information → Transfer App. Требуется согласие обоих Account Holder.


Плюсы и минусы

АспектПлюсыМинусы
ФункционалПолный доступ к экосистеме AppleНет бесплатного варианта для публикации
Командная работаГибкие роли и праваСложная настройка для Organization
ПоддержкаТехподдержка от AppleДолгое время ответа
СтоимостьФиксированная ценаЕжегодная оплата

Вопросы интервьюера

Q: Можно ли тестировать на устройстве без Developer Account?

Да, с бесплатным Apple ID. Но сертификаты действуют 7 дней, и недоступны Push, iCloud, In-App Purchases.

Q: Чем Individual отличается от Organization?

Individual — публикация от личного имени, быстрая регистрация. Organization — публикация от имени компании, требует D-U-N-S номер.

Q: Что такое Team ID и где он используется?

Уникальный 10-символьный идентификатор команды. Используется в Bundle ID, Provisioning Profiles, App Groups.

Q: Может ли один человек быть в нескольких Teams?

Да, один Apple ID может быть участником нескольких команд с разными ролями.


Источники