Как стать автором
Обновить
2.55

Safari

Браузер, разработанный корпорацией Apple

Сначала показывать
Порог рейтинга
Уровень сложности

Как появились веб-пуши Apple в Тинькофф

Уровень сложности Простой
Время на прочтение 6 мин
Количество просмотров 4.3K

Всем привет! Мы — архитектор разработки публичных веб-приложений Борис и разработчик системы-шлюза отправки нотификаций Данила. Расскажем о том, как создавались веб-пуши iOS в Тинькофф, как их настраивали и с какими проблемами столкнулись в процессе разработки.

Читать далее
Всего голосов 16: ↑14 и ↓2 +12
Комментарии 8

Новости

Проблема воспроизведения видео и его адаптация под iPhone и iPad. HTML5

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 3.1K

Недавно, в процессе реализации одного из модулей проекта, над которым я работаю — возникла проблема воспроизведения видео на web странице, а также возникли проблемы с его адаптацией под iPhone и iPad.

Проблема была в следующем:

Создал веб‑страницу HTML5, на которой есть небольшое видео, создал свою control‑panel для плейера, и все отлично работает в Chrome и FireFox, но совсем не работает ни на iPhone, ни на iPad. Получаю просто пустую страницу.

Читать далее
Всего голосов 3: ↑2 и ↓1 +1
Комментарии 2

Фичи WebKit в Safari 16.4

Уровень сложности Простой
Время на прочтение 21 мин
Количество просмотров 5K

Сегодня мы рады рассказать вам о многочисленных дополнениях к WebKit, которые включены в Safari 16.4. Этот выпуск содержит 135 новых веб-функций и более 280 обновлений. Давайте посмотрим.

Читать далее
Всего голосов 10: ↑9 и ↓1 +8
Комментарии 5

Релизы Safari — это ад для разработчиков

Время на прочтение 13 мин
Количество просмотров 4K

На прошлой неделе выкатили Safari 16.4, и для нас это стало кошмаром. Мы разрабатываем браузерное приложение для создания игр под названием Construct. Ранние версии Safari 16.4 ломали открытие проектов, предпросмотр проектов и весь контент, опубликованный при помощи Construct, каждый раз по-разному. Я захотела поделиться своим опытом, чтобы пользователи, разработчики, регуляторы и сама Apple знали, через что нам пришлось пройти из-за, казалось бы, рутинного релиза Safari.

Разработчики большинства браузеров предоставляют предрелизные версии для предварительного тестирования. Например, ежедневно обновляются Chrome Canary и Firefox Nightly, кроме того, существуют более редкие dev- и beta-релизы. Apple предоставляет Safari Technology Preview (STP), но она совместима только с macOS, и не обновляется по какому-нибудь открыто опубликованному графику. Похоже, это происходит примерно раз в две недели. Предрелизные браузеры обычно довольно шероховаты и содержат очевидные проблемы, которые достаточно быстро устраняют. Однако когда они начинают переходить в состояние беты, необходимо присмотреться повнимательнее. Поэтому когда 16 февраля было заявлено о выпуске Safari 16.4 beta 1 (тоже без какого-либо публичного графика), мы начали присматриваться и обнаружили множество проблем.
Читать дальше →
Всего голосов 22: ↑20 и ↓2 +18
Комментарии 4

Истории

Проблема с использованием тега img и picture в Safari

Время на прочтение 5 мин
Количество просмотров 3.6K

Данная статья описывает баг и его решения в контексте ReactJS + Server-Side Rendering, но это также актуально для всех фреймворков большой тройки так и для чистого JS.

При разработке сайта мы столкнулись с проблемой, что при использовании тега <img> на некоторых страницах Safari загружал изображение несколько раз вместо одного. Для отображения картинок мы использовали тег <img> с атрибутом srcset, что бы показывать картинки разного разрешения для экранов с высоким ppi.

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Уязвимость Safari 15 может легко раскрыть вашу личность любому веб-сайту

Время на прочтение 6 мин
Количество просмотров 7.4K

FingerprintJS не использует эту уязвимость в своих продуктах и не предоставляет сервисы межсайтового отслеживания. Мы боремся с мошенничеством и поддерживаем тенденцию полного устранения межсайтового отслеживания. 

Мы верим, что уязвимости, подобные этой, должны открыто обсуждаться, чтобы помочь браузерам как можно быстрее устранить их, поэтому отправили баг-репорт мейнтейнерам WebKit, создали демонстрацию уязвимости и открыли репозиторий с её кодом.

Читать далее
Всего голосов 17: ↑15 и ↓2 +13
Комментарии 3

Мы должны сказать спасибо KDE за современный веб

Время на прочтение 5 мин
Количество просмотров 32K

Мне всегда нравилась История. История дает понять мотивацию и причины произошедших событий, она срывает покровы, обличая случайные успехи и спланированные крахи. Сегодня я попытаюсь проследить одну ветвь эволюции браузерных движков и показать — насколько велика связь в мире открытых технологий.

Читать далее
Всего голосов 95: ↑93 и ↓2 +91
Комментарии 114

PWA: не Chrome'ом единым?

Время на прочтение 3 мин
Количество просмотров 7.7K

Я уже публиковал свою точку зрения, что Progressive Web Applications - это, прежде всего, технология для мобильных устройств. Основная особенность классических web-приложений - это клиент-серверная архитектура, а основная особенность "прогрессивных" web-приложений - возможность работы в offline. Понятно, что это очень сильно разные подходы в архитектуре - "всегда на связи" и "всё своё с собой". Совместить два таких разных подхода в одном приложении "это очень дорого и ни к чему".

Отталкиваясь от этой своей точки зрения, я решил посмотреть текущую статистику по браузерами - какие на данный момент у PWA-приложения возможности стать популярным и на какие браузеры оно должно ориентироваться. Данные для публикации взяты с сайта gs.statcounter.com

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 27

Как баг с потерянными днями рождения привёл нас в историю СССР

Время на прочтение 2 мин
Количество просмотров 13K

На корпоративном портале одного нашего заказчика у некоторых пользователей в их профиле неправильно отображалась дата рождения – вместо необходимого дня показывался предыдущий. Наши разработчики выяснили, что причина этой ошибки скрывалась глубоко в истории.

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Комментарии 14

Обновленный браузер Safari: как быть маркетологам

Время на прочтение 4 мин
Количество просмотров 10K

Что произошло?


16 сентября вышла новая версия операционной системы iOS 14 для мобильных устройств экосистемы Apple. Обновился также и встроенный браузер Safari — не только на смартфонах и планшетах, но и на ноутбуках и десктопах. В новой версии браузера появился встроенный функционал блокировки трекинговых пикселей на сайтах для лучшей защиты пользовательских данных. Блокируются популярные пиксели для веб-аналитики

Читать дальше →
Всего голосов 25: ↑16 и ↓9 +7
Комментарии 25

Как мы в ZeroTech подружили Apple Safari и клиентские сертификаты с websocket-ами

Время на прочтение 10 мин
Количество просмотров 1.1K
Статья будет полезна тем, кто:

  • знает, что такое Client Cert, и понимает для чего ему websocket-ы на мобильном Safari;
  • хотел бы публиковать web-сервисы ограниченному кругу лиц или только себе;
  • думает, что всё уже кем-то сделано, и хотел бы сделать мир немного удобнее и безопаснее.

История веб-сокетов началась примерно 8 лет назад. Ранее использовались методы вида долгих http-запросов (на самом деле ответов): браузер пользователя отправлял запрос на сервер и ждал, пока он ему что-то ответит, после ответа подключался вновь и ждал. Но потом появились веб-сокеты.
Читать дальше →
Всего голосов 1: ↑1 и ↓0 +1
Комментарии 0

Extended Validation не работает

Время на прочтение 4 мин
Количество просмотров 5K
Сертификаты расширенной проверки («EV») являются уникальным типом сертификата, выдаваемого удостоверяющими центрами после более тщательной проверки объекта, запрашивающего сертификат. В обмен на эту более строгую проверку, браузеры показывают специальный индикатор, например, зеленую полосу, содержащую название компании, или, в случае Safari, полностью заменяют URL на название компании.

Как правило, этот процесс работает достаточно хорошо, и ошибочно выпущенных сертификатов немного. Однако проблем хватает с лихвой. EV сертификаты содержат информацию о юридическом лице, стоящем за сертификатом, но не более того. Наименование юридического лица, однако, может быть достаточно вариативным; Например, Джеймс Бертон недавно получил EV сертификат для своей компании «Identity Verified»(англ. Подлинность проверена — прим. перев.). К сожалению, у пользователей просто нет возможности увидеть и разобраться в таких особенностях, и это создает значительный простор для фишинга.
Читать дальше →
Всего голосов 14: ↑14 и ↓0 +14
Комментарии 13

Эксплуатация Heap Overflow с использованием JavaScript

Время на прочтение 11 мин
Количество просмотров 6.4K

От переводчика


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

Предисловие


В этой статье представлен новый метод эксплуатации переполнения кучи (heap
overflows) в интерпретаторах JavaScript. Вкратце, для получения heap
overflow можно использовать команды JavaScript для обеспечения надежного отображения указателя функции сразу после переполнения буфера. В данном учебном исследовании используется техника для Safari, которую авторы использовали для победы в конкурсе CanSecWest 2008 Pwn2Own.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 0

Ближайшие события

iOS Safari 11 теперь умеет WebRTC

Время на прочтение 8 мин
Количество просмотров 15K

Пару недель назад состоялся релиз новых айфонов и iOS 11, который невозможно было не заметить. C релизом произошло еще одно, безусловно важное для разработчиков, событие: в браузере Safari появилась долгожданная поддержка WebRTC.

Вообразите на минуту, миллионы айфонов и айпадов по всему миру стали уметь реалтаймовое аудио и видео в браузере. Пользователям iOS и Mac стали доступны полнофункциональные браузерные видеочаты, воспроизведение живых трансляций с низкой (менее секунды) реалтаймовой задержкой, звонки, конференции и многое другое. К этому долго шли и наконец это случилось.
Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 1

Safari 11 и WebRTC: подводные камни видеозвонков

Время на прочтение 2 мин
Количество просмотров 9.5K
Итак, это свершилось. Кроме iPhone 8, который устарел ровно через полчаса после анонса iPhone 10, Apple обновила свой десктопный и мобильный браузер Safari. Среди прочих улучшений — реализация WebRTC (ходят слухи, что частично позаимствованная у Chromium. «Plan B» на это тоже намекает). Что это значит для разработчиков? Можно звонить через браузер как на десктопе, так и на айфонах. Голосом и видео. Я уже писал про обновленные инструменты разработчика в браузере, а сейчас хочу поделиться, как это все работает в релизе. Мы уже обновили SDK Voximplant, проверили, как Safari звонит в Microsoft Edge, и вот что я хочу рассказать…
Всего голосов 40: ↑38 и ↓2 +36
Комментарии 5

Новые инструменты Safari для отладки WebRTC

Время на прочтение 2 мин
Количество просмотров 5K
image

Совсем недавно Apple анонсировала поддержку WebRTC в Safari. Слухи ходили несколько лет, и теперь мы знаем: осенью WebRTC будет доступна для всех основных браузерах: Chrome, Firefox, Safari и Edge. С подводными камнями и несовместимостями. Технология очень крутая и позволяет передавать peer-to-peer между браузерами голос, видео, экран или произвольные данные. Ее использует «Skype for Web», «Hangouts» и другие известные коммуникаторы. А в новой версии Safari кроме самой WebRTC добавилось много плюшек для пользующихся ей разработчиков, о которых я расскажу под катом.
Читать дальше →
Всего голосов 33: ↑32 и ↓1 +31
Комментарии 0

Selenium: для любителей яблок

Время на прочтение 3 мин
Количество просмотров 21K

Привет! Это моя новая статья, посвященная Selenium. Ранее я уже подробно рассказал об организации масштабируемого кластера Selenium (часть I, часть II). Затем мы рассмотрели вопрос использования Selenium в качестве инструмента отладки автотестов (раз, два), Наконец, нам удалось создать порядок из хаоса на Windows (ссылка). Сегодня мы будем иметь дело с яблоками, точнее с одним большим Яблоком (т.е. с Apple).


Читать дальше →
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 8

CSS и iOS Safari

Время на прочтение 3 мин
Количество просмотров 131K
image Доброго времени суток, дорогие хабрахабровцы!

Всегда хочется, что бы твой сайт выглядел одинаково хорошо на разных устройствах, включая и мобильные. Но, если поведение в браузерах Android во многом предсказуемо, то с iOS возникает ряд «сюрпризов». О них сегодня и поговорим!
Читать дальше →
Всего голосов 24: ↑23 и ↓1 +22
Комментарии 32

Особенности –webkit-box или как «подружить» flexbox со старыми Safari

Время на прочтение 3 мин
Количество просмотров 55K
Уверен, многие Front End Developer-ы постоянно сталкиваются с проблемой поддержки flexbox в старых версиях популярных браузеров. Среди них выделяются два явных фаворита – Internet Explorer (IE) и Safari. С IE всё проще, т.к. flex поддерживается в версиях 10.0+. Версии ниже уже не актуальны, поэтому их часто игнорируют. В Safari же ситуация иная, поскольку поддержка современной спецификации flexbox (по мнению Caniuse.com) начинается с версии IOS Safari 9.2+.

image
Читать дальше →
Всего голосов 14: ↑11 и ↓3 +8
Комментарии 15

Словарное расширение для браузера: больше, чем онлайн-переводчик

Время на прочтение 6 мин
Количество просмотров 19K


У школы Skyeng есть расширение для веб-браузеров «Vimbox Переводчик», умеющее переводить английские тексты веб-страниц на русский язык. На первый взгляд, ничего особенного в этом нет, а подобных сервисов – пруд пруди, но в реальности эта штука очень важна для экосистемы школы, и мы надеемся, что она окажется полезна не только для наших учеников, но и для сторонних пользователей. Сегодня мы расскажем, почему мы так думаем, как мы разрабатывали это расширение, что оно умеет и над чем работает его команда в настоящий момент.
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Комментарии 2

Вклад авторов