6

以下は私のシナリオです:

  1. アプリがインストールされている場合は、アプリを起動してリファラー データを渡し、アプリ内で処理します。
  2. アプリがインストールされていない場合は、リファラー データを処理するアプリを Google Play に直接インストールします。

私は最初のケースを達成することができます

シナリオ 1 の場合、私は

リンク 1:

http://www.xxx.co.in/main?id=4&referrer="+referrer

アクティビティは正しく構成されており、シナリオ 1 を達成できています。

シナリオ2の場合、私は持っています

final String url = "http://www.xxx.co.in/main?id=4&referrer="+referrer+"#Intent;scheme=market;action=android.intent.action.VIEW;package=com.xxx&referrer="+referrer+";end";

これは達成できません。アプリがインストールされていない場合、Google Play に移動する代わりに、ブラウザで www.xxx.co.in/main.... を開こうとします。

ここで何が間違っていて、これを達成する方法。

注: 自分のサーバーをホストしたくないため、リモート サーバーからのリダイレクトは対象外です。

4

1 に答える 1

0

このリンクをネイティブの Android ブラウザまたは Chrome で開いていますか? これはインテント リンクのように見えるため、正しくフォーマットされていても Chrome でのみ機能します。ただし、Chrome はAndroid Play リファラーをサポートしていません。

正直なところ、これはBranch.ioのような外部の遅延ディープ リンク サービスの完璧なユース ケースのように思えます(完全な開示: 私は Branch チームに所属しています)。ブランチ リンクは、あなたが説明していることを正確に実行し、すべてのブラウザーでそれを実行しながら、さまざまなバリエーションをすべて処理する必要があるという頭痛の種からあなたを救います。心配する必要があるのはarticleID: story123、リンクを作成するときに一連のキー/値パラメーター (例: ) を定義することだけです。Branch は、ユーザーがリンクをクリックした後にアプリを初めて起動したときに、それらのパラメーターがアプリ内で確実に返されるようにします。 、リンクがクリックされたときにアプリがインストールされたかどうか。その後、値を使用して、必要に応じてルーティング/カスタマイズできます。

于 2016-10-01T04:22:51.527 に答える