Передайте данные реферера через хром, чтобы играть в Google
Так что у меня есть мобильная сеть, которая пытается открыть мое приложение для Android, если оно не существует, оно может вернуться к Google Play.
для хрома я использую это намерение:
intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name;end
и он работает нормально, теперь я хочу отправить в Google Play строку реферала для INSTALL_REFERRER в приложении.
Я попробовал следующую ссылку, у нее нет проблем с отправкой данных в Google Play, но он не будет пытаться открыть приложение
intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name&referrer=referrer_string;end
Интересно, как правильно открыть приложение и вернуться к Google Play с передачей данных реферера?
Ответы
Ответ 1
Похоже, это можно сделать, пройдя S.market_referrer=referrer_string
Например
intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name;S.market_referrer=referrer_string;end
Я не тестировал это, но для этого есть некоторые проверки в репозитории хрома, не знаю, доступен ли он в текущей версии хром.
https://codereview.chromium.org/2061493002
Ответ 2
Это известная проблема, с которой я работаю с командой, чтобы ее исправили. Кто-то в прошлом предложил использовать intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name&referrer=referrer_string;end
, однако логика этого никогда не срабатывала специально, потому что браузер Chrome (и Android-браузер) ищет идентификатор пакета, который является прямой копией строки, которая анализируется как package_name&referrer=referrer_string
.
Ответ 3
В новой схеме вы можете передавать аргументы как дополнительные приложения, но вы должны кодировать URI следующим образом:
<a href="intent://whatever/#Intent;scheme=myapp;package=com.what.ever.myapp;S.myextra=mystring;end">Do Whatever</a>
источник