2015-01-06 3 views
2

Мне нужно создать приложение iOS, которое должно знать реферальный код сразу после установки. Код исходит из электронной почты или из ссылки в браузере. Цель состоит в том, чтобы приложение имело реферальный код, независимо от того, он уже установлен на устройстве пользователя или он устанавливается щелчком по ссылке.Ввод информации во вновь установленное приложение

То, что я уже знаю:

  • Я должен зарегистрировать схему URL с моим приложением, например myapp://
  • Я должен обрабатывать открытие по этому адресу, признавая код ссылающейся от него (myapp://refcode=123)
  • Я должен иметь веб-сервис, который детектирует (с JavaScript), если устройство пользователя может обрабатывать мою схему URL или нет (например: https://stackoverflow.com/a/6599773/511878)
  • Если приложение не установлено, то я могу отправить пользователю приложение S чтобы загрузить его, в противном случае я могу открыть приложение по этому URL-адресу и передать информацию в него

Что я пропущу: как я могу сразу вызвать этот URL после установки?

Я был уверен, что это невозможно сделать до сегодняшнего утра, когда я обнаружил, что TestFlight от Apple делает то же самое. У меня есть письмо, содержащее приглашение в какое-то приложение, щелкнув по ссылке, и поскольку на этом устройстве у меня не было установленного TestFlight, оно привело меня в App Store, где я нажал кнопку «Установить». На устройстве установлено приложение TestFlight. После этого я нажал кнопку «Открыть» в магазине, которая сразу же показала приглашение для меня.

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

EDIT: Видео этого случая: http://gk.lka.hu/x/tf.mov

Таким образом, вопрос: Как я могу передать информацию в приложение который устанавливается после нажатия на ссылку без reclicking ссылки?

+0

Я не думаю, что вы можете. Он показывал приглашение только после того, как вы вошли в систему? – Wain

+0

Ничто не может обнаружить, что если ваше приложение только что было установлено, кроме вашего приложения. Лучше всего иметь веб-сервис, который вызывается при первом запуске приложения, вы можете использовать NSUserDefault для сохранения реферального кода и для проверки его первого запуска. – iphonic

+0

@Wain: Нет, мне не нужно было входить в систему или делать что-либо, приложение было открыто с приглашением сразу после его запуска. – gklka

ответ

1

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

  1. веб-службы вы описали выше, должны захватить некоторую информацию от пользователя, например, IP-адрес, OS, OS, размер экрана и т. Д., Прежде чем перенаправлять в App Store. Он должен ассоциировать это со ссылкой, на которую был щелкнут, или, по крайней мере, с кодом refcode (http://yoursite.com/redirect?refcode=123).

  2. После того как ваше приложение будет загружено при первом запуске, отправьте ту же информацию (IP-адрес, ОС и т. Д.) На ваш сервер. Если ваш сервер видит эти параметры и что они такие же, как и то, что вы захватили на шаге 1, он должен передать refcode = 123 в ваше приложение.

  3. Затем ваше приложение должно обрабатывать код 123, однако вы считаете нужным (например, открываете соответствующий контроллер вида, применяете реферальный код и т. Д.).

Надеюсь, это поможет. Это определенно сложнее, чем кажется, что нужно строить с нуля.

Смежные вопросы