通过Chrome的意向传递引用数据到谷歌播放

所以我有一个移动networking,试图打开我的Android应用程序,如果它不存在,它会回落到谷歌播放。

对于铬,我使用这个意图:

intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name;end 

它工作正常,现在我想发送一些引用string谷歌播放INSTALL_REFERRER在应用程序。

我试了下面的链接,它没有发送数据到谷歌播放的问题,但它不会尝试打开应用程序

intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name&referrer=referrer_string;end

我不知道什么是正确的方式来打开应用程序,并退回谷歌播放引用数据被传递?

  • AndroidManifest中的意图filter的操作名称不应该使用string引用吗?
  • 如何知道一个应用程序将在android中被卸载?
  • 在我的N1启动后,我的BroadcastReceiver没有收到BOOT_COMPLETED的意图
  • 使用显式和隐式意图启动android服务
  • 如何正确过滤Package取代的广播
  • 在Android的清单文件中,main,default和launcher有什么用处
  • 将应用程序与Googlesearch结果和Chrome集成
  • Android - 匹配url模式?
  • 看起来可以通过传递S.market_referrer=referrer_string来完成

    例如

     intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name;S.market_referrer=referrer_string;end 

    我没有testing过这个,但是在这个铬回购中有一些检查,不知道它是否在当前版本的铬中可用。

    https://codereview.chromium.org/2061493002

    这是我与团队合作解决的一个已知问题。 过去有人build议你可以使用intent://some_data_sent_to_app#Intent;scheme=app_scheme;package=package_name&referrer=referrer_string;end但是这个逻辑从来没有特别的工作,因为Chrome浏览器(和Android浏览器)寻找一个包id是被parsing为package_name&referrer=referrer_string的string的直接副本。

    使用新的scheme,您可以将参数作为额外的传递给应用程序,但是您必须按以下方式对URI进行编码:

     <a href="intent://whatever/#Intent;scheme=myapp;package=com.what.ever.myapp;S.myextra=mystring;end">Do Whatever</a> 

    资源