8

所以我注意到根据here,您可以在网站上放置一个链接并让用户点击它。如果用户安装了应用程序,应用程序将被启动。如果未安装该应用程序,Google Play 商店将启动并搜索特定包,这是一个很棒的功能!!但据我了解,这将失去通过推荐字符串播放商店的能力。

根据这里,你可以有一个像这样的链接market://details?id=your.package.name&referrer=YourReferrerString如果在应用程序中设置了广播接收器,您将能够捕获引荐来源字符串,但如果我使用来自此处的第一种方法,如何实现相同的目标?

是我能找到的唯一一个讨论 Chrome 上的新 (?) 功能的线程,但它似乎没有回答我的问题。

谢谢!!

4

1 回答 1

3

结果很简单。Chrome 的默认引荐来源网址是“com.android.chrome”。通过将 after package 放在您的 intent:// URI 中来覆盖它&referrer=,例如:

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 回答