8

hereに従って気づいたので、サイトにリンクを貼って、ユーザーにクリックしてもらうことができます。ユーザーがアプリをインストールしていた場合、アプリが起動されます。アプリがインストールされていない場合、Google Play ストアが起動し、特定のパッケージを検索します。これは優れた機能です。しかし、私の理解では、これにより紹介文字列をプレイストアに渡す機能が失われます。

hereによると、 のようなリンクを張ることができますmarket://details?id=your.package.name&referrer=YourReferrerString。アプリにブロードキャスト レシーバーが設定されている場合は、リファラー文字列をキャッチできますが、ここからの最初の方法を使用した場合、どうすれば同じ目標を達成できますか?

これは、Chrome の新しい (?) 機能について話している唯一のスレッドですが、私の質問には答えていないようです。

ありがとう!!

4

1 に答える 1

3

非常に単純であることがわかります。Chrome からのデフォルトのリファラーは「com.android.chrome」です。これをオーバーライドする&referrer=には、intent:// URI の package の後に置きます。次に例を示します。

var g_intent = "intent://" + code + 
  "/#Intent;scheme=yourscheme;package=com.your.app&referrer=code%3D" + 
  code + ";launchFlags=268435456;end";

これは、ソリューションの JavaScript 部分をより完全に説明し、intent:// スキームが機能しない場合は通常のマーケット リンクにフォールバックする要点です: https://gist.github.com/akent/dec1b4b7383436b4623e

そしてあなたのJavaコードで:

public static class InstallReferrerReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        String referrer = intent.getStringExtra("referrer");
        // Do things with your referrer here
    }
}

そして AndroidManifest.xml では:

    <receiver android:name=".YourActivity$InstallReferrerReceiver" android:exported="true">
        <intent-filter>
            <action android:name="com.android.vending.INSTALL_REFERRER" />
        </intent-filter>
    </receiver>
于 2014-11-10T13:04:38.423 に答える