私は参照元の概念を初めて使用しています。Googleプレイストアが参照元データを「com.android.chrome」に変更していますか?
Google Playstoreには、インストール後にGoogleプレイストアがインストール後に参照元データをブロードキャストとして送信し、それに従って処理するというコードを書いています。問題は、私がGoogleにfirebackを求めているデータが、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
iが送信したエンコード> 私が見る何
: "com.android.chrome"
ですが、なぜでしょうか?
私にとっては、Playストアアプリが開いて白い画面を表示します。デバイスモニタを見ると、次のレコードが表示されます。 '03-14 16:45:30.931:I/ActivityManager(1289):START u0 {act = android.intent.action.VIEW cat = [android.intent.category .BROWSABLE] dat = market://詳細?id = com.some.app.name&referrer = extra1&referrer = com.android.chrome flg = 0x10000000 pkg = com.android.vending cmp = com.android.vending/com.google。 android.finsky.activities.LaunchUrlHandlerActivity} from uid 10034 pid 19319 on display 0' この場合、URIに 'referrer'を2回追加したことがわかります。 – asciimo
将来の冒険者への注意:パッケージに '&referer'を追加することは、Chromiumのバグレポートの多くに記載されている論争の歴史を持っています。解決策は、2016年9月に公開された 'intent://' URIに余分な 'S.market_referrer'を追加することでした。ここには「固定のコメント」(https://bugs.chromium.org/p/)がありますクロム/ issues/detail?id = 459711#c32)。 – asciimo