Размер имеет значение! Часть 3

Как бы мы себя не обманывали — Размер имеет значение! И конечно, мы будем говорить о размере нашего андроид приложения, куда мы добавляем кучу классных features, и даже не задумываемся как это может негативно повлиять на размер приложения. Поэтому мы н…

Эмуляторы, симуляторы или тестовые фермы. Что выбрать для мобильного тестирования?

Привет! Меня зовут Татьяна Дерягина, я QA-инженер из команды мобильного тестирования в СберМаркете. Моя команда работает дистанционно, находясь в разных городах России. Хочу рассказать, как как мы адаптировались к процессу тестирования, без большого ко…

Чеклист для дизайнеров от frontend и mobile разработчиков

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

WebView: забыть нельзя интегрировать

При разработке мобильного приложения iOS или Android рано или поздно может встать вопрос: «Реализовать фичу на WebView или же нативно?». В некоторых случаях ответ лежит на поверхности, но, к сожалению, так бывает не всегда. А если очень велик соблазн п…

На твой телефон пришло новое сообщение

Привет! Сегодня я хочу затронуть тему SMS, а точнее, поделиться опытом их «приручения» в Android на примере собственного пет-проекта. Читать далее…

[Перевод] История Goose Maps, первых автономных оффлайн карт для Apple Watch

Недавно мы запустили офлайн карты для Apple Watch. Проект занял более 2 лет и потребовал огромного внимания со стороны нашей небольшой команды энтузиастов. Мы столкнулись с таким количеством продуктовых и технических сложностей, что просто не может не …

Как мы научились учитывать перепады высот по геокоординатам в мобильном приложении

В мобильном приложении для регистрации беговых тренировок важно правильно вычислять суммарный подъем и спуск спортсмена на маршруте тренировки. Однако высота по GPS имеет неприемлемую погрешность. Но вычисление можно улучшить путем сглаживания профиля …

Логи в iOS, эпизод 1: os_log

Представьте, что вы садитесь делать новый проект для iOS/iPadOS/macOS/tvOS/watchOS. Совсем скоро сталкиваетесь с первым багом и, чтобы его понять и исправить, добавляете логи — вызываете print() тут и там. Баг исправили и часть логов убрали, …