it-swarm.com.ru

Как реализовать реферальную программу в мобильных приложениях для Android и iPhone

У нас есть мобильное приложение, которое доступно как в Google Play Store, так и в Apple AppStore. Мы хотим внедрить реферальную программу, чтобы больше пользователей могли устанавливать и использовать наше приложение. 

Вот история пользователя:

  • Каждому новому пользователю (например, Джон) предоставляется уникальная реферальная ссылка, где он/она может поделиться с FB/TW/Email или SMS.
  • Когда Джон Френд нажимает на ссылку, они направляются в соответствующую базу AppStore на своем устройстве.
  • В тот момент, когда друг Джона установит приложение и откроет приложение, наш сервер должен получить уведомление, и мы узнаем, что реферал принадлежит Джону, Джон будет соответственно вознагражден.

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

Ценю любые комментарии, предложения 

Приветствия Джеймс

48
James Khoo

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

Я попытаюсь объяснить нашу реализацию, используя ваш сценарий: В соответствии с вашей историей пользователя:

  • Каждому новому пользователю (например, Джон) дается уникальная реферальная ссылка, которую он/она может поделиться ею со своими друзьями, используя FB/TW/Email или SMS.

  • Когда друг Джона нажимает на ссылку, он сначала перенаправляется на сервлет, который в конечном итоге перенаправляет его в соответствующий AppStore на основе его платформы (Android/iPhone) для загрузки приложения.

  • Обратите внимание, что мы можем узнать IP-адрес, пользовательский агент и модель устройства пользователя, который щелкнул ссылку с помощью сервлета.

  • Мы уже знаем, что реферальная ссылка принадлежит Джону, и, следовательно, сервлет отображает IP-адрес, пользовательский агент и/или модель устройства друга Джона на запись Джона в базе данных.

  • В тот момент, когда друг Джона устанавливает приложение и открывает приложение, приложение отправляет IP-адрес, пользовательский агент и/или модель устройства на сервер. 

  • Сервер проверяет запись для всех пользователей, чтобы найти реферера, и если он находит его, в нашем случае Джон, Джон получает соответствующее вознаграждение ..

Это оно. Мы реализовали это в самом прошлом месяце, и это увеличило наши загрузки ........ Дайте мне знать, если это полезно.

65
Puru Pawar

Android

На Android вы можете создать установочный приемник, где вы можете получить и сохранить часть ссылки на SharedPreferences.

https://play.google.com/store/apps/details?id=com.example.app &referrer=example_referral_code_here

Для этой проверки
Android - Можно ли программно получить реферер установки
а также
Получить реферера после установки приложения из Android Market

iOS

На данный момент (январь 2016 г.) Невозможно получить код реферера установки в вашем приложении, как в случае с Android.

Варианты, которые я имел для ios, были:

  1. пользовательские фреймворки/сторонние сервисы, такие как alau.me
  2. обходной путь с дактилоскопией, подобный тому, что предлагает Пуру Павар
  3. просто заставьте пользователя ввести реферальный код внутри вашего приложения
5
lxknvlk

Если кто-то все еще ищет решение этого вопроса. Я прочитал много блогов и документов по той же проблеме и пришел к следующему выводу:

IP-адрес + пользовательский агент + модель устройства недостаточно для однозначной идентификации устройства. Итак, я думаю, что будет лучше использовать динамические ссылки. Вы можете создавать динамические ссылки, содержащие уникальный идентификатор. И эти данные сохранятся после перенаправления URL-адреса в магазин приложений, и даже после установки ваше приложение может получить уникальный идентификатор из динамической ссылки. База данных Google может использоваться для создания динамических ссылок: -

https://firebase.google.com/docs/dynamic-links/

Или, если вы хотите использовать готовое решение, вы можете обратиться к branch.io

3
Chandan Kumar

Это можно сделать с помощью Google Campaign Measurement , где в utm_source просто укажите уникальный номер/строку для каждого пользователя, который вы получите, когда друг пользователя установит приложение, поскольку Google Play Store передает его после установки. Обратитесь к этому вопросу .

0
rjsadda
 Gradle File
 implementation 'com.Android.installreferrer:installreferrer:1.0'


 PUT CODE IN ACTIVITY WHERE IT NEED TO RECIEVE REFFERAL CODE

 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.
        }
    });

    SHARE LINK EXAMPLE
    https://play.google.com/store/apps/details?id=com.yourpackage&referrer=9BE46300
0
Teraiya Mayur