Bundle ID и имя пакета: где найти и как не перепутать

7 минут чтения

Два поля в задании на установку путают чаще всего. Что такое имя пакета, чем оно отличается от числового кода App Store и где взять настоящий bundle id.

В задании на установку приложения есть два разных поля: ссылка на страницу в магазине и идентификатор приложения. Их постоянно путают, потому что кажется, что второе выводится из первого. Для Android это правда, для iOS — нет: числа в адресе App Store к bundle id отношения не имеют.

Зачем вообще нужен идентификатор

Ссылка отвечает на вопрос «куда пойти», идентификатор — на вопрос «что именно должно оказаться на устройстве». Это разные вещи, и заполнять их нужно по отдельности. Ссылка может вести через переадресацию рекламной сети, может открыться в региональной версии магазина, может со временем устареть. Идентификатор же однозначно называет приложение и не меняется.

На практике идентификатор нужен, чтобы исполнитель мог сверить: он поставил именно твоё приложение, а не похожее из того же поиска. У популярных продуктов всегда есть клоны с почти одинаковыми названиями и иконками, и разбираться постфактум по скриншоту дольше, чем один раз правильно заполнить поле.

Откуда берётся это значение

И имя пакета, и bundle id придумывает не магазин, а тот, кто выпускает приложение. Пишутся они по одному и тому же принципу — домен компании задом наперёд плюс название продукта. Отсюда привычный вид com.example.app: сначала зона, потом компания, потом само приложение.

Главное свойство этого значения — постоянство. Название приложения в магазине можно поменять хоть завтра, иконку и описание тоже, а идентификатор останется прежним: по нему устройство отличает обновление от нового приложения. Поэтому он и годится на роль того, что исполнитель сверяет у себя на экране.

Второе важное свойство — уникальность внутри магазина. Двух приложений с одинаковым именем пакета в Google Play быть не может, как и двух одинаковых bundle id в App Store. А вот совпадение между магазинами возможно: одна и та же компания часто использует одинаковое имя для обеих версий, но полагаться на это нельзя.

Android: имя пакета из адреса Google Play

Для Android идентификатор называется именем пакета и выглядит как com.example.app. Хорошая новость: он прямо лежит в адресе страницы приложения в Google Play, доставать его ниоткуда не нужно — ни кабинета разработчика, ни помощи того, кто выпускал приложение, тут не потребуется.

  1. Открой страницу приложения в Google Play

    Подойдёт как страница в браузере, так и ссылка «Поделиться» из мобильного приложения магазина — адрес там один и тот же.

  2. Посмотри на адрес

    Он выглядит так: play.google.com/store/apps/details?id=com.example.app. Всё, что стоит после id=, и есть имя пакета.

  3. Скопируй значение до первого амперсанда

    Если в адресе есть дополнительные параметры вроде языка или метки перехода, они идут после символа & и в идентификатор не входят.

В поле задания вставляй именно значение, без адреса вокруг: com.example.app, а не всю ссылку. Площадка проверит формат — она ожидает несколько частей, разделённых точками, из латинских букв, цифр и подчёркиваний.

iOS: bundle id в адресе App Store отсутствует

Адрес приложения в App Store выглядит так: apps.apple.com/ru/app/имя-приложения/id284882215. Число после id — это идентификатор приложения в магазине, и он не является bundle id. Bundle id того же приложения выглядит совсем иначе, например com.facebook.Facebook.

Что этоКак выглядитГде встречается
Числовой код App Store284882215В адресе страницы приложения после id
Bundle IDcom.facebook.FacebookВ настройках приложения у разработчика
Имя пакета Androidcom.facebook.katanaВ адресе Google Play после id=

Обрати внимание на третью строку: у одного и того же продукта идентификаторы на Android и iOS могут отличаться. Копировать имя пакета из Google Play в поле bundle id нельзя — это разные значения, и совпадают они далеко не всегда.

Где взять настоящий bundle id

  1. Спросить у того, кто выпускает приложение: в кабинете разработчика Apple это значение указано в свойствах приложения и известно любому, кто им занимается.
  2. Посмотреть в публичном справочнике Apple: запрос itunes.apple.com/lookup?id=284882215 с числовым кодом из адреса магазина возвращает данные приложения, включая поле bundleId.
  3. Взять из документации партнёрской сети, если приложение уже ведётся через неё: там bundle id обычно указан рядом с оффером.

Как не перепутать

  • Точки и латиница — признак идентификатора приложения. Только цифры — признак кода App Store.
  • В поле идентификатора вставляется значение, а не ссылка целиком.
  • Регистр букв у iOS имеет значение: com.Example.App и com.example.app — разные значения.
  • Пробелы по краям при копировании попадаются чаще, чем кажется: перепроверь начало и конец строки.
  • Ссылка на магазин и трекинговая ссылка — разные поля, и заполнять их нужно по отдельности.

Проверка за тридцать секунд

Для Android проверка выглядит так: возьми значение, которое собираешься вписать в задание, и подставь его в адрес play.google.com/store/apps/details?id= в адресной строке браузера. Если открылась страница твоего приложения — значение верное. Если магазин показал ошибку или чужое приложение, ты где-то ошибся при копировании.

Для iOS порядок обратный: сначала берёшь числовой код из адреса магазина, потом через справочник Apple получаешь по нему bundle id и сверяешь название приложения в ответе. Название в ответе — это дополнительная страховка: если оно не то, которое ты ожидал, значит числовой код скопирован не от того приложения.

Обе проверки занимают полминуты и делаются из обычного браузера, без доступа к кабинету разработчика. Делай их каждый раз при создании задания на установку: приложение может переехать, а старая ссылка из переписки — устареть.

Что проверяет площадка

При сохранении задания форма делает несколько проверок, и все замечания она показывает сразу, а не после публикации. Первое: ссылка ведёт в магазин выбранной платформы. Для Android это домен Google Play, для iOS — App Store, причём старый домен itunes.apple.com тоже принимается: ссылки из партнёрских кабинетов до сих пор часто такие.

Второе: для Android заполнено имя пакета, для iOS — bundle id. Третье: формат самого идентификатора. Если ты по ошибке вставишь числовой код App Store в поле bundle id, форма это заметит — в нём нет ни одной точки, а значит он не похож на идентификатор приложения.

Чего площадка проверить не может, так это того, что идентификатор относится именно к твоему приложению. Правильный по формату, но чужой bundle id пройдёт проверку молча, а разбираться придётся уже по отчётам исполнителей. Поэтому сверяй значение с магазином до запуска, а первую партию делай небольшой — как советует статья как создать первое задание.

Что написать исполнителю

Идентификатор полезен не только машине. Вынеси его в инструкцию прямым текстом: «на экране приложения в настройках должно быть указано com.example.app» или «проверь, что ставишь приложение именно от этого разработчика». Так человек отсечёт клона до установки, а не после того, как ты отклонишь его отчёт.

Там же имеет смысл описать, что должно быть видно на скриншоте: открытое приложение, конкретный экран, дата. Чем точнее описано доказательство, тем меньше спорных отчётов и тем быстрее ты их разбираешь — а разобрать их нужно за сутки, иначе они примутся автоматически.

И последнее: не требуй от исполнителя ничего, что он не может сделать без твоего приложения. Регистрация по номеру телефона, привязка карты, вход через чужой аккаунт — всё это резко сокращает число желающих и повышает долю отказов. Что ещё помогает получить живых людей, разобрано в статье как отсечь накрутку.

Что дальше

Идентификатор — это половина настройки задания на установку. Вторая половина — подтверждение результата: скриншот, минимальное время пользования приложением и по желанию трекинговая ссылка, по которой партнёрская сеть сама подтвердит установку. Остальные параметры задания — лимиты, гео и минимальный рейтинг — разобраны в статье про про-настройки задания.

Обязательно ли заполнять идентификатор приложения?

Да, для задания на установку он нужен: по нему исполнитель сверяет, что поставил именно то приложение. Для Android это имя пакета, для iOS — bundle id.

Можно ли вписать в поле ссылку на приложение?

Нет, для ссылки есть отдельное поле. В поле идентификатора идёт только значение вида com.example.app.

Почему у моего приложения разные идентификаторы на Android и iOS?

Так бывает: это два независимых значения, которые назначаются при выпуске приложения в каждом магазине. Совпадение — скорее удача, чем правило.

Что делать если приложение ещё не вышло в магазин?

Задание на установку заводить рано: исполнителю неоткуда взять приложение, а идентификатор проверить невозможно. Дождись публикации и только потом создавай задание — иначе получишь партию отказов и потраченное время.

Числовой код App Store вообще где-то нужен?

Он нужен, чтобы найти bundle id через публичный справочник Apple, и он же участвует в разборе ссылки на магазин. В поле идентификатора приложения его вписывать нельзя.

Читайте также