Google Play Install Referrer API 与 INSTALL_REFERRER 广播

Posted

技术标签:

【中文标题】Google Play Install Referrer API 与 INSTALL_REFERRER 广播【英文标题】:Google Play Install Referrer API vs. INSTALL_REFERRER broadcast 【发布时间】:2017-11-30 10:46:15 【问题描述】:

最近 Google 发布了 Google Play Install Referrer API (announcement)。

与来自 Google Play 的 INSTALL_REFERRER 广播相比,它除了提供引荐来源网址本身外,还提供点击和安装时间等额外信息。

第一个问题:它可以完全替代 INSTALL_REFERRER 广播吗?我们应该放弃广播接收器并开始使用新的 API 吗?

第二:有什么信息在什么特殊情况下新API比INSTALL_REFERRER广播更可靠?

【问题讨论】:

你能找到任何信息吗?我正在寻找延迟的深层链接,INSTALL_REFERRER 会派上用场。不确定新 API 如何支持这种情况。 我建议您对延迟深度链接使用现有解决方案。问题是 INSTALL_REFERRER 不可靠,可能不会到达。检查诸如getsocial.im之类的东西,或者他们都推迟了深度链接解决方案的Branch。 您的问题解决了吗?你有一些工作代码吗?您从什么地方开始跟踪您的第一次安装?您是否添加了用于收听 Intent.ACTION_PACKAGE_FIRST_LAUNCH 的广播接收器,或者只是在 mainActivity 中编写了代码? 【参考方案1】:

一切都与安全简单有关。正如doc 所暗示的那样,您可以使用 Google Play 商店的 Install Referrer API 从 Google Play 安全地检索更准确和可靠的推荐内容,您也可以考虑切换到 Install Referrer API 客户端库以简化您的开发过程。正如你在查询中提到的,它返回 ReferrerDetails 对象,其中包含与使用以下三种方法安装相关的额外信息。

ReferrerDetails response = mReferrerClient.getInstallReferrer();
response.getInstallReferrer();
response.getReferrerClickTimestampSeconds();
response.getInstallBeginTimestampSeconds();

该 API 仅适用于 Play 商店版本 8.3.73 及更高版本。任何想要开始使用它的开发者都可以立即开始使用,但必须在他们的应用和 Play 商店之间建立连接。

另外,请查看 article from Adjust,其中解释了新 API 如何防止移动广告的点击注入欺诈。

附:您需要跟踪最新的 API 级别,以便为您在项目中面临的问题提供最佳解决方案。

【讨论】:

您的问题解决了吗?你有一些工作代码吗?您从什么地方开始跟踪您的第一次安装?您是否添加了用于收听 Intent.ACTION_PACKAGE_FIRST_LAUNCH 的广播接收器,或者只是在 mainActivity 中编写了代码? 你可以为回调实现InstallReferrerStateListener。检查this 以供参考。 嘿。我在 Adjust 工作。我赞同@AnoopM 所说的话。这里的想法是防止“点击注入”——一种常见的欺诈方案——并防止恶意应用程序窃取流量。链接的文章是很好的进一步阅读 由于这个api几乎不可能测试,你能举例说明response.getInstallReferrer();是如何返回的吗? 您是如何测试新库 API 的?

以上是关于Google Play Install Referrer API 与 INSTALL_REFERRER 广播的主要内容,如果未能解决你的问题,请参考以下文章

在模拟器上安装 Google Play 游戏

Google PlayGoogle Play 服务框架安装 ( 安装 Google Play 服务框架 | 安装 Google Play 服务 | 安装 Google Play 商店 )

打开游戏的时候提示没有google play 服务怎么办?

Google Play从 Android 应用中跳转到 Google Play 中 ( 跳转代码示例 | Google Play 页面的链接格式 | Google Play 免安装体验 )

如何将国产android机添加到google play?

安装Google play?