Как отслеживать загрузки на iOS5 без UDID - PullRequest
8 голосов
/ 09 октября 2011

Кто-нибудь, кто знает, как отслеживать загрузки приложений iOS (с помощью веб-рекламы) без UDID?

Я думал, что это станет невозможным, особенно если пользователь переходит с веб-сайта в AppStore.Но компания под названием WDA, кажется, делает это возможным.

http://www.lovefortech.com/2011/09/17/developers-track-ads-on-ios-and-android-devices-without-udid-with-apptracker/

http://wda.us/press/track-app-downloads-from-web-ads-without-udid.php

У меня есть некоторые идеи, но я не уверен, что это лучший способ.

1) Cookie: приложения iOS не могут получить доступ к cookie в Safari.2) Shared Local Strage: есть ли общее хранилище, которое может быть записано Safari и прочитано нативным приложением iOS?

1 Ответ

8 голосов
/ 09 октября 2011

У меня похожая проблема. Ниже приведены мои предлагаемые решения - я сам собираюсь реализовать второе.

Первое решение:

РЕДАКТИРОВАТЬ: , как отмечает Джон Баллинджер в своем комментарии ниже, gekitz, автор UIDevice-with-UniqueIdentifier-для-iOS-5, меняет свою лицензию на MIT :) Спасибо, Джон!

Если вам просто нужна надежная замена UDID, попробуйте это и, пожалуйста, обратите внимание на его лицензию. Вы также можете искать другие решения на GitHub.

Второе решение:

Обновление этого решения: я отбросил идею, так как слишком много разработчиков говорят мне, что это нарушит HIG.

Гораздо более гибко, позволяет отслеживать кампании установки с вашими партнерами (например, назначив каждому филиалу определенное значение "UDID", которое вы можете позже проверить после установки приложения и отправки "UDID" на ваши серверы).

SO пользователей : пожалуйста, сообщите нам, если любое из нижеприведенного может нарушить HIG и, по сути, привести к отклонению заявки (особенно шаги 5, 6 и 7).

  1. Подготовить ссылку на страницу, которая выполняет скрипт, который оставляет файл cookie, значение которого является уникальным (например, «UDID», сгенерированный вашим сервером).
  2. Пользователь нажимает эту ссылку в Mobile Safari. Скрипт хранит куки и затем перенаправляет на страницу iTunes с вашим приложением (например, http://itunes.apple.com/us/app/skype/id304878510?mt=8&uo=4).
  3. Приложение App Store запускается и показывает страницу с вашим приложением.
  4. Пользователь устанавливает приложение и запускает его.
  5. При первом запуске: после заставки вы видите предупреждение с просьбой активировать приложение (достаточно одной кнопки, например, «Активировать»).
    • Примечание. Вам нужно убедиться, что предупреждение все еще отображается, когда приложение переводится в фоновый режим и возобновляется. Также вам необходимо иметь
  6. Пользователь нажимает «Активировать», ваше приложение закрывается / приостанавливается и iOS открывает Safari и переходит на страницу (например, ссылка жестко закодирована в вашем приложении), который читает значение cookie (наш «UDID») и запускает ваше приложение используя схему URL, передавая это значение "UDID".
    • Примечание: вам нужно разрешить Safari открыть эту ссылку (может потребоваться дополнительное кодирование, не уверен);
    • Я полагаю, что некоторая страница с лицензионным соглашением (например) должна быть представлена ​​пользователю и кнопкой, позволяющей продолжить, поэтому пользовательский интерфейс понятен пользователю (т. Е. Нет опыта, который приложение оставляет для открытия сафари и после второго сафари подает в отставку и открывает ваше приложение).
  7. Приложение запускается / возобновляет работу, сохраняет «UDID» и разблокирует приложение, позволяющее отображать основной интерфейс и т. д.
  8. Теперь вы можете использовать сохраненный «UDID» при генерации событий для вас сервер статистики и т. д.
  9. Позже вы можете обновить / удалить свой UDID, поделившись ссылками (ссылки URL-схемы приложения, распространяемые в информационном бюллетене в моем случае), которые откроют ваше приложение и передадут новое значение.

ПРИМЕЧАНИЕ : вам нужно будет охватить множество крайних случаев, таких как запуск / возобновление приложения с (или без) URL-схемой или Push-уведомлением и т. Д.

P.S. Ухожу на некоторое время, но позже проверим ваши отзывы. Спасибо!

...