打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Why Has Google Broken Deeplinking on Android?

Why Has Google Broken Deeplinking on Android?

As close observers of mobile platforms have noticed, the latest Chrome build has seriously degraded the functionality of deeplinks on Android. The Intent URLs  can no longer be triggered from on-page JavaScript, causing all sorts of problems for app marketers.

The impact to Android users is significant:

  • Apps that utilize deeplinks will not launch
  • Apps that have rich in-app webview content (including Facebook) can no longer open Intent URLs
  • Facebook’s own App Links standard, designed to make deeplinking easier for developers, has been severely degraded and can no longer provide fallback URLs to those who don’t have the target app installed
  • Platforms like URX and DeepLink.me no longer work as designed, which may mean many wasted advertising dollars on Android
  • Many other mobile marketing platforms are presenting a broken user experience to their advertisers
  • Apps with rich and equivalent content in both their app and on their site can no longer use a non-Play Store destination as their fallback URL if the Android user doesn’t have the app already installed. That means if they’re not using a deferred deeplink product like Onboarding Links, the user’s intent will be lost

The technical details for this change are complex to describe, but it revolves around Chromium no longer able to launch certain intent URLs from JavaScript. This problem was confirmed by AppsFlyer in Issue 459156. The original submission from February 17 2015 reads:

What is the expected behavior?
Should redirect to Play Market or open page inside the app
Getting ERR_UNKNOWN_URL_SCHEME all the time, exept window.open call
What went wrong?
Did this work before? Yes In Chrome 38.x

A similar bug filed for webview was opened on February 24 2015.

What’s changed?

Deeplink companies commonly use JavaScript to attempt to redirect users to a deeplink. Recently, Google Chrome on Android was updated to version 40. The new version of Google Chrome does not support redirecting to non-HTTP/S URL schemes (including intent:// and custom app URL schemes like fb://) via JavaScript.

Redirects to these types of destinations still work if they’re performed by a redirect link instead of JavaScript, but that is not how they’re commonly used.

Why the change?

There are three possible reasons for this change in behaviour in Chrome:

  • A bug: Chrome is just swallowing unrecognized URL schemes instead of passing them to the Android intent handler like it should
  • Protection from naughty ads: JavaScript redirects to the app store are sometimes used in ad injections. This was a big problem on iOS for a time
  • Google’s preparing to produce their own way of doing this, perhaps something like the Smart App Banner on iOS. This would tie in nicely with their efforts to improve mobile SEO and their newly released Web App Install Banners.

If you’re affected by this bug we’d love to hear from you.

Note for Tapstream customers: we are not affected by this bug, as we don’t use JavaScript to launch URLs.

Update March 13: Some more information was gleaned thanks to a few tips and it seems that the new behaviour is not a bug. It was implemented to curtail some undesirable behaviour (option #2 in our three possible reasons above). Read more in our full update.

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Google在2020年支付670万美元的Bug赏金
时代:Chrome OS未来会比Android更重要
#Google I/O 2014# Chrome OS与Android进行深度整合,除了不能在电脑上接打电话,它们几乎就是同一件设备 | 36氪
Google终于要给Android引入64-bit的Chrome了,不过只有Android 10 能用
Android 13重磅来袭:支持运行Win 11子系统!你会更新吗
Google启动Chrome体验网站,大炫Chrome和JavaScript威...
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服