Невозможно получить реферальный код после установки приложения для Android из магазина приложений - PullRequest
0 голосов
/ 28 мая 2019

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

public static void shareMyApp(Context context) {

    String link = "https://play.google.com/store/apps/details?id="+context.getPackageName();

    Intent sharingIntent = new Intent(Intent.ACTION_SEND);
    sharingIntent.setType("text/*");
    sharingIntent.putExtra(Intent.EXTRA_TEXT, link);
    context.startActivity(Intent.createChooser(sharingIntent, "Share Via"));
}

Ответы [ 2 ]

1 голос
/ 28 мая 2019

Создайте ссылку с реферальным кодом и отправьте другим друзьям и пользователям ...

String link = http://yourdomain.com/testrefer.php?refercode=ABCD // http or https

Intent sharingIntent = new Intent(Intent.ACTION_SEND);
sharingIntent.setType("text/plain");
sharingIntent.putExtra(Intent.EXTRA_TEXT, link);
context.startActivity(Intent.createChooser(sharingIntent, "Share Via"));

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

https://play.google.com/store/apps/details?id="+context.getPackageName()+"&referrer=ABCD

в Manifest файле на стартовом экране, чтобы написать ниже код

<activity
    android:name=".activity.SplActivity"
    android:screenOrientation="portrait"
    android:theme="@style/SplashTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data
                android:host="yourdomain.com"
                android:pathPrefix="/testrefer.php"
                android:scheme="https" />  <!-- https or http -->
      </intent-filter>
</activity>

InstallRefererReciever - это имя файла, которое вы создали BroadcastReceiver

<receiver
    android:name=".common.InstallRefererReciever" 
    android:exported="true"
    android:permission="android.permission.INSTALL_PACKAGES">
    <intent-filter>
        <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
</receiver>

Создайте BroascatReceiver и напишите код:

public class InstallRefererReciever extends BroadcastReceiver {

    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent != null) {
          Bundle extras = intent.getExtras();
          if (extras != null) {
             String referral = extras.getString("referrer");
             Logger.e("ReferCode --> ", referral);
             if (referral != null) {
                 if (!referral.equals("utm_source=google-play&utm_medium=organic")) {
                     if (!referral.equals("com.android.chrome")) {
                       String referralCode = referral; // Store in sharedpreferences
                    }
                }
             }
          }
       }
   }


}
1 голос
/ 28 мая 2019

Для этого вы должны использовать ниже библиотеки

реализация 'com.android.installreferrer: installreferrer: 1.0'

https://developer.android.com/google/play/installreferrer/library

https://developer.android.com/training/app-links/deep-linking.html

Спасибо, это может помочь вам

...