Что именно сломало наш любимый Safari в iOS 9.3

Наверняка, если вы уже установили iOS 9.3 на свое устройство, вы столкнулись с проблемой браузера Safari. Открыть ссылку стало практически невозможно, где бы вы ее ни нашли. Как так вышло, что Apple выпустила огромное количество бета-версий iOS 9.3, а релизная версия принесла с собой этот баг? У нас есть ответ на этот вопрос. Более того, прямо сейчас мы наблюдаем за тем, как Apple борется с багом.

Что именно сломало наш любимый Safari в iOS 9.3. Фото.

На странице блога Бена Коллиера подробно описана причина возникшей проблемы с Safari. В iOS 9 Apple представила «Универсальные ссылки» — функцию, которая позволяет разработчикам связать их сайт и мобильное приложение. Если ссылка ведет на страницу сайта, приложение которого установлено на вашем устройстве, интересующая вас страница будет открыта в приложении, если его разработчики уже используют «Универсальные ссылки».

Как работают «Универсальные ссылки»

Разработчики приложений публикуют на своем сайте специальный файл. В этом файле содержится перечень ссылок, которые могут быть открыты в их приложении. Как только вы устанавливаете приложение, iOS загружает файл с сайта разработчика, пополняя вашу собственную базу URL, которые могут открывать установленные на вашем устройстве приложения.

Когда вы нажимаете на какую-нибудь ссылку, iOS просматривает базу поддерживаемых URL, для того чтобы узнать, может ли эта ссылка быть открыта в каком-либо из установленных приложений. Если операционная система не находит совпадений, ссылка открывается в Safari и другие приложения не запускаются.

Что пошло не так

Похоже, что баг в iOS не позволяет корректно работать «Универсальным ссылкам» после того, как операционная система скачает слишком большой файл с информацией о совместимых URL.

Коллеги из 9to5Mac заметили, что такой файл для популярного приложения Booking.com весил 2,3 МБ. Файл такого размера может просто ломать базу поддерживаемых URL в iOS. Разработчики Booking.com могли бы сделать файл значительно более изящным, но в том, что он оказался способен навредить iOS, виновата в первую очередь Apple.

Не торопитесь удалять приложение Booking.com, это ничего не изменит. А вот если у вас оно не было установлено, не стоит торопиться с установкой. Тем не менее у нас нет точных данных, согласно которым проблема в Safari кроется именно в размерах файлов, опубликованных разработчиками. Есть также версия, согласно которой проблема кроется в функции проверки полномочий, которая позволяет приложениям и сайтам обмениваться информацией о входе в систему.

Даже если проблема не в «Универсальных ссылках», Booking.com обновили свой файл с информацией об URL, и теперь он весит всего 4 КБ, однако это никак не помогло тем, чей браузер Safari уже сломан. Более того, приложение Booking.com за последний вечер обновилось несколько раз, что гораздо чаще, чем Apple обычно принимает обновления на рассмотрение. Есть вероятность, что разработчики Booking.com работают совместно с инженерами Apple над решением проблемы.

iOS 9.3Проблемы Apple