Update Five 11:44 March 29/03/2016:
I’ve posted a shorter fix – here’s how to fix it with an iTunes sync and Airplane mode!
Update Four 11:10 March 29/03/2016: there’s a fix! There are a lot of steps, but if you really want to get back in action Wojtek Pietrusiewicz has a fix. Apparently he spent four hours getting it working.
Update Three 22:20 March 28/03/2016: a few updates have occurred to the Booking.com app, as these have appeared quicker than Apple would usually review them, my guess would be Apple is working with Booking.com to try and find a workaround without requiring a whole iOS release.
Update Two 15:00 March 28/03/2016: it looks like it might not be the size of the association file but an issue with Shared Web Credentials – which allows apps / websites to share login info.
Update One 13:00 March 28/03/2016: Booking.com have updated their association file – it’s now only 4KB – this hasn’t fixed the issue but should prevent new users that install from hitting the same problem. Even reinstalling the app and rebooting doesn’t fix it – the swcd (shared web credentials daemon) crashes once it’s got corrupt data in it.
Short version: there is currently no fix for this – we’re waiting on Apple to resolve. A reboot sometimes temporarily fixes the issue, and turning off JavaScript gets Google search results working again. If you haven’t got the problem – don’t install the Booking.com app (read on for more info).
A lot of users (including myself and a few friends) are experiencing links in Mail and Messages not working, and some links in Safari, like Google Search results, not opening. A long press on a broken link causes the app you’re in to crash, otherwise a standard tap highlights the link but nothing happens.
This issue was reported by some users on 9.2.1 but has only become widespread since 9.3 was released on 21st March 2016.
What’s Going On
In iOS 9 Apple introduced Universal Links, these allow app developers to associate their website and app, so links to the website can open the app up automatically if installed. For example, following a link to a Guardian article opens up the Guardian app to that specific article instead of their website.
App developers put an app association file on their website which lists which types of URLs the app can open. When you install an app, iOS downloads this associated file and updates your own database of what URLs your installed apps can open. The website and app listing in iTunes are linked by the developer – so it prevents anyone from hijacking your website with their app.
When you tap a link in iOS, the system looks through the database of installed apps supported URLs to see if it matches a pattern an installed app can handle. If nothing matches it opens it up as a standard app.
Why’s It Broken
It looks like there’s a bug in iOS that completely breaks the Universal Links if it gets served an app association file that’s too large.
Benjamin Mayo of 9to5mac.com reported installing the Booking.com app consistently broke their test devices – which led Steve Troughton-Smith (who else…) to take a peep at their association file:
Wow https://t.co/klS5VNaTfk literally put every URL they had into their site association file. 2.3MB download pic.twitter.com/sALK6nGkq2
— Steve T-S (@stroughtonsmith) March 28, 2016
It seems that the large size of their file, due to it having every URL from their website inside it breaks the iOS database on the device. Apple allows you to have pattern based matching, so instead of having to include every hotel’s URL in the association file, Booking.com could just put /hotel/* to match all the hotels on their site.
Whilst Booking.com aren’t following the recommended approach, it’s not their fault that a third-party can break a fundamental system feature like web browsing. Apple should be handling these edges graciously.
The worst part – deleting the app doesn’t clear the Universal Link association. Because the OS process that handles the Universal Links has crashed, it appears unable to remove the corrupt database.
The Workarounds
Unfortunately there’s no fix for this at the moment although a restart of the OS can temporarily restore links, and turning off JavaScript (Settings -> Safari -> Advanced) allows certain websites, such as Google search results to work again. Apple confirmed these workarounds to me, and hinted there may be a software update to resolve this;
Be sure to keep your software up to date in case a future release addresses this issue.
We do have two workaround options. Restarting the phone may allow links to work, but the issue can come back. The other workaround would be [to] turn off JavaScript.
Some users have been able to fix with an elaborate reboot cycle;
@stroughtonsmith @KhaosT To elaborate. Rebooted, downloaded app, enabled Airport, opened app, rebooted, deleted app, disabled airport mode
— Rosyna Keller (@rosyna) March 28, 2016
The other unknown fix is whether Booking.com can resolve it for now by changing their association file (update – they have but it doesn’t help if you’re already hit by the problem). This would only be effective until the next app breaks it – the only long-term fix is an update from Apple.
turning off java script means I can’t trade stocks and do a lot of other things using my apple devices. Can’t believe Apple would make a mistake like this. very disappointed!
Thanks for this good explanation. Hope this will help Apple to solve the problem!
I am unable to open various links on Safari on all of my Apple devices, I
including all of my search engines and my bank account, and resetting the phone and iPad had no effect whatever. I hope that Apple expeditiously devises a fix to its latest operating system.
Thanks for the explanation. I started having problems with my iPad Air 2 yesterday having used IOS 9.2.1 for a while and ignored my own usual advice by updating to 9.3. I think I opened the Booking.com app by clicking, accidentally, on an email link. My workaround at the moment is using Google Chrome and opening a new tab, though links in mail and some apps don’t work. I still have an iPhone 4s on 9.3 which is unaffected, though I’ll be deleting Booking.com for now!
Very disappointing that apple don’t make an honest statement about this and let us all know how long this is going to go on for.
New OTA-update for my iPad Air is just out!!!
Not yet for my phone 🙁
Thank you, booking.com
Whilst it’s Booking.com that causes the problem – the issue is definitely with iOS – they shouldn’t be able cause such a catastrophic system bug.
One may have impression that QA standards drastically lowered :/
Temporary workaround for Google links in Safari is to change search engine to… Bing.
DuckDuckGo won’t work for me.
Great workaround!
Bing still doesn’t work for me. iPhone 5S Version 9.2.1. Problem only started about 2 days ago.
I have problems as described here, and also have the Booking.com app. I’ve used the app too. Whilst I can’t pretend to understand everything you say, I get the impression that my iPad (and my iPhone?) won’t work very well until Apple get a fix sent out with an OS update. I have powered down the iPad (several times), but it’s all so frustrating. As you suggested, I’ve now turned off JavaScript. I hope this improves things!
Thank you for this my iPad Google search freezes was going to contact apple but will now wait for a new update, to see if the new update works.
Great that someone has gotten to the bottom of this. I was at the Apple Store in NYC At 1am yesterday. None of the people there knew how to solve it. I looked online and there are, by now, thousands of users in several threads in Apple forums complaining that links don’t work. Here is some more info:
This isn’t just affecting 9.3, it’s true also on 9.2.1
Don’t bother wiping and restoring your phone, the problem comes back. My guess is that it was triggered by something in the Apple WebView APIs that happened recently, because it started happening on my phone for no reason this Friday (with 9.2.1) and most of these forum messages are from the past few days.
Apple hasn’t responded yet and 9.3 doesn’t fix this problem.
For now, use Google Chrome. Long-tap on links in Safari and other Apple apps crashes the app. However, thankfully in Chrome for iOS, it works (even though it also uses Apple’s WebView). You can follow links via long-tap and copy-pasting the link into the Address bar.
Finally, if you’re wondering why some mobile links still seem to work – those are the ones enabled by javascript handling of tap events, that don’t use the regular mechanism of loading a url.
If you long press in Firefox for iOS, you can open the link in a new tab.
Funny, I tried google links with my Nokia Lumia, and voila. Nokia just works!
Running iOS 9.3 on iPhone 6. When opening Safari and search something, after sites are not opening. iOS 9.3 is a problem!
Will we be notified when Apple correct this issue ?
Why does my iPhone and iPad running iOS 9.3 not suffer this problem if I have the Booking.com app installed? Is it because I haven’t opened it recently?
Ihad the same problem. Had the booking app installed and safari would not open links, nor could i open links in my mail. I deleted booking app, restored iPhone with itunes. Deleted the booking app while the cloud was trying to put iT back. Everything is working fine again. If you do not have the booking app installed, think of what the last app was that you downloaded, delete iT, restore with iTunes, make sure the cloud doesn’t put it back 🙂 ( delete when it is not fully on) Good Luck!!
Why are you saying this is an iOS 9.3 issue? From what I see, it’s an iOS 9 problem, with recent additions to the booking.com app being one cause.
New version of Booking.com app (11.3.2) is available.
It doesn’t solve the problem 🙁
Yes the update removes the universal links entitlement but Apple caches the results so even though the app is fixed, you have to go through the crazy setups above to reset the shared credentials.
The following trick solved the issue for me:
– 1) Put the phone in Airplane mode
– 2) Power it down
– 3) Power it up and while staying in Airplane mode
– 4) Delete Booking.com
– 5) Power it down
– 6) Power it back up and turn off Airplane
– 7) Go to Safari and browse normally
Source: https://news.ycombinator.com/item?id=11375978
Didn’t work on an iPad 4 running iOS 9.3 with the Booking.com app previously installed. Still not following links in Google searches.
Something isn’t what it shouldn’t be. I tried this and I have tried everything else, but nothing helps.
I think it must be Apple that solve the problem!
Thanks, it worked on my iphone6, but then what about using booking.com app?
Was off to order a new ipad pro tomorrow but having second thoughts now.
I am running iOS 9.2.1 on both my iPhone 5s and my iPad2. The bug suddenly appeared on my phone two days ago, and I HAD NOT used or updated the Booking.com app AT ALL in months. Last time I used it was last year in August, so the Booking.com app can´t be the only reason for the problem, as it sure didn´t cause the bug on my device.
Just today, the bug also appeared on my iPad2. Again, having used neither the Booking.com website nor the app, I can exclude Booking.com from being the sole reason for the bug (no, the Booking.com app wasn´t even running in the background).
Choique on 28/03/2016 at 9:59 pm said: a lot…
doesn’t work, sorry
There’s more to it then booking.com alone
I’ve been having this problem on my iPad for about a day. Now, as of tonight, Safari on *Mac* is crashing. I can load a page, but eventually it just beach balls. Happening on both my iMac and MacBook Air. Seems like more than a coincidence…
I have the problem since I have upgraded to 9.3
It’s really a shit :-(( and the way Apple does not solve immediatly the problem is not acceptable.
I am going to downgrade to my last backup and, as I am looking to change my phone, I will see what Samsung proposed 🙁
I found a “workaround” for your Google-seach within Safari. Just use DuckDuckGo as Search Engine and use g! before every search-tag. The search results are clickable.
Following worked for me (iOS 9.2.1):
1) Get most recent version on Booking.Com (one released 29/03)
2) Close all open apps
3) Open Booking.Com and Run a search; click through to a link
4) Close all apps (should only be Booking.com)
5) Power Off phone
6) Power On phone
7) Links within Google search were working.
Note: It might just be a power off then on again after getting the most recent version of Booking.Com. I listed the above only because that’s exactly what I did and the links started working as they should.
this did not work for me on an phone 6 I have updatec IOS to 9.3 before the issue became apparent, none of the other suggested fixes work for me either. I spoke today with apple support who say a fix is coming very soon via IOS update they suggested disabling javascript in meantime which allows safari to work – however doesn’t sort the issue of links in mail or messages.
As has been said, some of these might fix the browser, but none seem to fix the mail/other apps links, which is actually as/more important. I think most are stuck until Apple creates a program to clean out/restart the swcd process on the devices.