Google Play Store меняет данные реферера на "com.android.chrome"?
Я новичок в концепции реферера.
Я написал код, цель которого состоит в том, чтобы Google PlayStore отправлял данные реферера в виде широковещательной рассылки моему приложению после установки, которое я соответственно перехватываю и обрабатываю. Проблема в том, что данные, которые я запрашиваю у Google, не совпадают с тем, что Google на самом деле отправляет мне.
Я использую следующий код для создания ссылки:
final String url = "intent://details?id=com.myapp&url="a dummy url"&referrer="+referrer+"#Intent;scheme=market;action=android.intent.action.VIEW;package=com.myapp;S.referrer="+referrer+";end";
Здесь реферер = <правильный base64
закодированная строка>
НОТА:
Первоначальный фиктивный URL мне не нужен. Мой интерес заключается в том, чтобы вернуться к Google, чтобы установить приложение. Здесь предполагается, что у меня не установлено приложение на устройстве, поэтому это должно работать. Откат происходит правильно, и меня перенаправляют в Google PlayStore, откуда я устанавливаю приложение, после чего данные реферера передаются в мое приложение. Я ловлю данные реферера и показываю их в виде тоста в производственной сборке.
Что я ожидаю увидеть в данных тоста: <мой base64
закодированный который я отправил>
Что я вижу: "com.android.chrome"
Почему это происходит?
1 ответ
Проведя слишком много времени. Я смог понять, что происходит. Если нет рефереров, данный chrome присоединяет свой реферер, значение которого равно "com.android.chrome". То, как я прикреплял реферер, было неправильным, поэтому реферер по умолчанию был выбран. Исправление в последней части
изменить это
..., упаковка =com.myapp;S.referrer="+ ссылающейся +", конец ";
в
..., упаковка =com.myapp& реферер = "+ ссылающейся +", конец ";
Надеюсь, что это помогает другим. Весь мой день был потрачен на это.