Как реализовать реферальную программу в мобильных приложениях для Android и iPhone
У нас есть мобильное приложение, которое доступно как в Google Play Store, так и в Apple AppStore. Мы хотим внедрить реферальную программу, чтобы больше пользователей могли устанавливать и использовать наше приложение.
Вот пользовательская история:
- Каждому новому пользователю (например, Джону) присваивается уникальная реферальная ссылка, где он/она может делиться на FB/TW/Email или SMS.
- Когда Джон Френд нажимает на ссылку, они направляются в соответствующую базу AppStore на своем устройстве.
- В тот момент, когда Джон друг установит приложение и откроет приложение, наш сервер должен получить уведомление, и мы узнаем, что реферал принадлежит Джону, Джон будет соответственно вознагражден.
Мы оценили ряд инструментов для отслеживания установки мобильных приложений, большинство из которых лучше всего используются в издательстве/мобильной рекламе.
Ценю любые комментарии, предложения
Ура Джеймс
Ответы
Ответ 1
Мы делаем подобный тип реферальной системы в нашем приложении, которая предоставляет определенное количество очков вознаграждения рефереру (который фактически поделился ссылкой на приложение) при успешной установке приложения новым пользователем (тот, кто получил ссылку).
Я попытаюсь объяснить нашу реализацию, используя ваш сценарий:
Итак, согласно истории пользователя:
-
Каждому новому пользователю (например, John) предоставляется уникальная реферальная ссылка, которую он/она может поделиться с друзьями, используя FB/TW/Email или SMS.
-
Когда Джон нажимает на ссылку, он перенаправляется сначала на сервлет, который в конечном итоге перенаправляет его в соответствующий AppStore на основе своей платформы (Android/iPhone) для загрузки приложения.
-
Обратите внимание, что мы можем узнать IP-адрес, пользовательский агент и модель устройства пользователя, который нажал ссылку с помощью сервлета.
-
Мы уже знаем, что реферальная ссылка принадлежит Джону, и, следовательно, сервлет сопоставляет IP-адрес, пользовательский агент и/или модель устройства John friend с записью John в базе данных.
-
В тот момент, когда John friend устанавливает приложение и открывает приложение, приложение отправляет на сервер IP-адрес, пользовательский агент и/или модель устройства.
-
Сервер проверяет запись против всего пользователя, чтобы найти реферера, и если он найдет его, в нашем случае Джон, Джон получит вознаграждение соответственно.
Вот оно. Мы реализовали это в прошлом месяце, и это увеличило наши загрузки.
Дайте мне знать, если это будет полезно.
Ответ 2
Android
На Android вы можете создать установочный приемник, где вы можете получить и сохранить часть ссылки на SharedPreferences.
https://play.google.com/store/apps/details?id=com.example.app&referrer=example_referral_code_here
Для этой проверки
Android - возможно ли получить установку реферера программно
а также
Получить реферер после установки приложения из Android Market
а также
https://developer.android.com/google/play/installreferrer/library.html
IOS
На данный момент (январь 2016 г.) Невозможно получить код реферера установки в вашем приложении, как с Android.
Варианты, которые я имел для ios, были:
- пользовательские платформы/сторонние сервисы, такие как alau.me
- обходной путь с дактилоскопией, подобный тому, что предлагает Пуру Павар
- просто заставьте пользователя ввести реферальный код внутри вашего приложения
Ответ 3
Если кто-то все еще ищет решение этого вопроса. Я прочитал много блогов и документов по той же проблеме и пришел к следующему выводу:
IP-адрес + пользовательский агент + модель устройства недостаточно для однозначной идентификации устройства. Поэтому я думаю, что будет лучше использовать динамические ссылки. Вы можете создавать динамические ссылки, содержащие уникальный идентификатор. И эти данные сохранят перенаправление URL в магазин приложений, и даже после установки ваше приложение может получить уникальный идентификатор из динамической ссылки. Google firebase может использоваться для создания динамических ссылок: -
https://firebase.google.com/docs/dynamic-links/
Или, если вы хотите использовать готовое решение, вы можете обратиться к branch.io
Ответ 4
Gradle File
implementation 'com.android.installreferrer:installreferrer:1.0'
СДЕЛАТЬ КОД В ДЕЯТЕЛЬНОСТИ, ГДЕ НУЖНО ПОЛУЧИТЬ РЕФЕРАЛЬНЫЙ КОД
InstallReferrerClient mReferrerClient;
mReferrerClient = InstallReferrerClient.newBuilder(this).build();
mReferrerClient.startConnection(new InstallReferrerStateListener() {
@Override
public void onInstallReferrerSetupFinished(int responseCode) {
switch (responseCode) {
case InstallReferrerClient.InstallReferrerResponse.OK:
// Connection established
try {
ReferrerDetails response =
mReferrerClient.getInstallReferrer();
if (!response.getInstallReferrer().contains("utm_source"))
edtPRferelCode.setText("" +
response.getInstallReferrer());
} catch (Exception e) {
e.printStackTrace();
}
mReferrerClient.endConnection();
break;
case
InstallReferrerClient.InstallReferrerResponse.FEATURE_NOT_SUPPORTED:
// API not available on the current Play Store app
break;
case
InstallReferrerClient.InstallReferrerResponse.SERVICE_UNAVAILABLE:
// Connection could not be established
break;
}
}
@Override
public void onInstallReferrerServiceDisconnected() {
// Try to restart the connection on the next request to
// Google Play by calling the startConnection() method.
}
});
ПОДЕЛИТЬСЯ ПРИМЕР ССЫЛКИ
https://play.google.com/store/apps/details?id=com.yourpackage&referrer=9BE46300
Ответ 5
Это можно сделать, используя "Измерение Google Кампании" , где в utm_source просто указывается уникальный номер/строка для каждого пользователя, который вы получите, когда пользователь друг устанавливает приложение, поскольку в магазине Google Play будет широковещать его после установки.
См. этот вопрос.
Ответ 6
Альтернативой является предоставление вашим текущим пользователям уникального кода, например, David123 или HenryABC. Они делятся своим кодом (который легко запомнить как личным). В вашем приложении вы предоставляете реферальный блок, в который новый пользователь вводит код, чтобы разблокировать дополнительные функции. Таким образом, вы можете отслеживать и не беспокоиться о отпечатке пальца. Большая проблема с методом отпечатка пальца - iOS недостаточно уникальна, а мобильные сети используют IP-адреса. Так что у кого-то с iPhone 6s в Лондоне на EE, вероятно, будет такой же отпечаток пальца, как у 100 других людей.