Получение (не% 20set) параметров UTM с помощью Install Referrer- Android

Я использую свой собственный широковещательный приемник для отслеживания параметров UTM следующим образом.

 <receiver
    android:name=".services.CustomInstallListener" 
android:exported="true">
    <intent-filter>
      <action android:name="com.android.vending.INSTALL_REFERRER" />
    </intent-filter>
</receiver>

 public class CustomInstallListener extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
      if (intent.hasExtra("referrer")) {
       String data = intent.getStringExtra("referrer");
       String referrers[] = data.split("&");
       for (String referrerValue : referrers) {
         String keyValue[] = referrerValue.split("=");
         if (keyValue.length > 0) {
          if (keyValue[0].equalsIgnoreCase("utm_campaign")) {
            ... something                    
          }
        }
      }
  }

Я также реализовал InstallReferralClient следующим образом

referrerClient.startConnection(new InstallReferrerStateListener() {
@Override 
public void onInstallReferrerSetupFinished(int responseCode) {
   switch (responseCode) {
    case InstallReferrerClient.InstallReferrerResponse.OK:      
     ReferrerDetails response = null;
     try {
      response = referrerClient.getInstallReferrer();
     } catch (RemoteException e) {
       e.printStackTrace();
     }
   }
}
@Override
public void onInstallReferrerServiceDisconnected() {
}
});

И я использовал Google Play Url Builder для создания этого URL.

https://play.google.com/store/apps/details?id=com.myapp&referrer=utm_source%3Dweb%26utm_medium%3Dlogo-click%26utm_term%3Dnew-install%26utm_content%3Dworld-cup%26utm_cam_cam%3Dworld-cup

Теперь я пробовал использовать как URL-адреса HTTP, так и https, а также пробовал некоторые другие решения, отвечая на некоторые другие вопросы по StackOverflow, но, похоже, ничего не работает.

Link1, Link2, Link3

Для всех параметров UTM, переданных в URL-адресе магазина воспроизведения, я получаю значение (не% 20set). Я также попытался использовать URL-адрес в глубокой ссылке из ветки и динамических ссылок firebase, и у меня такая же ошибка.

Но я уверен, что код для этого правильный, поскольку он возвращает кампанию и среднее значение как Google и обычный соответственно при прямой установке из Play Store.


person saurabhlahoti    schedule 21.06.2019    source источник


Ответы (1)


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

Я не могу сказать, почему это предполагаемое поведение, но, возможно, кто-то из Google сможет пролить свет.

person najm    schedule 21.07.2019
comment
Спасибо, это сработало ... Никогда не думал, что это будет так с этой проблемой. - person saurabhlahoti; 29.07.2019
comment
Действительно работает. Не могли бы вы поделиться какими-либо официальными документами Google по этому поводу? - person Dmitry Salnikov; 11.09.2019
comment
@ Дмитрий Сальников, к сожалению, я нигде официально не нашел этого документированного. Просто узнал об этом при тестировании. - person najm; 12.09.2019
comment
В моем случае я пытался установить с другим utm_source, но всегда получаю utm_source = google-play utm_medium = organic - person Saumil Vaghela; 08.04.2021