Обновить
62.63

iOS *

Мобильная ОС компании Apple

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

Дайджест интересных материалов для мобильного разработчика #391 (19 — 25 апреля)

Время на прочтение3 мин
Охват и читатели2.9K
В новой подборке машинное обучение на iPhone и прямые intent, навигация без магии и уменьшение размера приложения, извилистые дороги операционных систем, продуктовые фреймворки, простой дизайн, мобильное здоровье в прошлом году и многое другое!

Читать дальше →

Как мы создали фреймворк для построения графиков в iOS-приложении

Время на прочтение10 мин
Охват и читатели5.6K

Привет, я Сергей, iOS-разработчик в ЮKassa, занимаюсь ее мобильным приложением. Недавно в нем появился просмотр аналитики по счетам и платежам. И сегодня я расскажу, как мы реализовали эту возможность, а еще — зачем и как разработали собственный фреймворк для создания графиков.

Читать статью

Как мы подружили Flutter с CallKit Call Directory

Время на прочтение20 мин
Охват и читатели7.4K

Flutter+CallKitCallDirectory=Love


Привет!


В этом лонгриде я расскажу о том, как мы в Voximplant пришли к реализации собственного Flutter плагина для использования CallKit во Flutter приложении, и в итоге оказались первыми, кто сделал поддержку блокировки/определения номеров через Call Directory для Flutter.


Читать дальше →

Дайджест интересных материалов для мобильного разработчика #390 (12 — 18 апреля)

Время на прочтение4 мин
Охват и читатели3.1K
В этом дайджесте рассматриваем новые подходы к спискам и коллекциям, вопросы автогенерации музыки и написание безболезненных unit-тестов, спиннеры и иконки, рост приложений, вентиляторы, генерацию идея для игр и многое другое!

Читать дальше →

Подходы к спискам на UICollectionView

Время на прочтение14 мин
Охват и читатели8.6K

Уже давным давно, во всех известных нам галактиках мобильные приложения представляют информацию в виде списков - будь то доставка еды на Татуине, имперская почта или обычный ежедневник джедая. С незапамятных времен мы писали UI на UITableView и не задумывались.

Копились бесчисленные баги и знания об устройстве этого инструмента и о лучших практиках. И когда мы получили очередной infinite scroll дизайн, мы поняли: пришло время задуматься и дать отпор тирании UITableViewDataSource и UITableViewDelegate.

Читать далее

Связанные неявные выражения в Swift 5.4

Время на прочтение2 мин
Охват и читатели2.9K

В Swift 5.4: не явные выражения для членов классов (также известные как «точечный синтаксис») теперь могут использоваться даже при обращении к свойству или методу в результате такого выражения, пока окончательный тип возвращаемого значения остается прежним.

Читать далее

Уродливый API

Время на прочтение4 мин
Охват и читатели14K

В этой статье хочу рассказать о проблемах, с которыми столкнулся в процессе интеграции с API по HTTP протоколу, и поделиться опытом их решения.

При разработке фронтенд приложений (mobile/web), часто сталкиваешься с тем, что API на бэкенде еще не реализован. Приходится ждать разработчика на бэкенде, когда он предоставит нужные запросы, постоянно напоминая ему о себе. Не редкость и другая ситуация, когда нужные http запросы уже есть, но они реализованы очень плохо и криво.

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

В этом проекте я разрабатываю мобильное приложение на Flutter, используя пакет Retrofit, который помогает мне сократить время и код, который приходится писать самому, генерируя значительный код автоматически. Так же использую Insomnia, для первоначальной проверки запросов до реализации их в коде.

Итак, начнем.

Читать далее

Cordova. Опыт Enterprise-проекта

Время на прочтение6 мин
Охват и читатели8.9K

В данной статье хочу поделиться опытом разработки мобильного enterprise-приложения на платформе Apache Cordova, рассказать о вариантах реализации такого проекта, о плюсах, минусах и нюансах. Это будет общий обзор без технических деталей, последние, возможно, будут описаны в отдельной статье.

Немного истории

Четыре года назад для нужд нашей организации было принято решение написать мобильное приложение для двух платформ (iOS и Android). Программист был один, а опыта работы с нативными языками на тот момент не было. Для этих целей мы решили попробовать кроссплатформенную схему разработки от Cordova.

Читать далее

Дайджест интересных материалов для мобильного разработчика #389 (5 — 11 апреля)

Время на прочтение4 мин
Охват и читатели3K
В новом выпуске делаем таб-ба с нестандартной кнопкой и кастомные переходы, эволюционируем декларативные фреймворки и готовимся к I/O 2021, доказываем разработку и отказываемся от стандартных теней. Все это и многое другое в этом дайджесте!

Читать дальше →

Как мы сделали мобильное приложение для курьеров «ВкусВилл» за 9 дней

Время на прочтение5 мин
Охват и читатели12K
Привет, меня зовут Алексей Кафтанов, я — руководитель компании FullStack (входит в ГК «Автомакон»). Мы занимаемся разработкой мобильных и web-приложений.

В начале года у нас появился интересный кейс. За две недели мы сделали базовое курьерское приложение с обновлением функционала без необходимости выгрузки билда в стор.
Читать дальше →

Разработка, аналитика и атрибуция. Какие сервисы нужны для мобильного приложения в 2021?

Время на прочтение7 мин
Охват и читатели9.2K

Сервисы, которые пригодятся для разработки и продвижения, можно разделить на шесть категорий: Атрибуция трафика, Продуктовая аналитика Отправка пуш-уведомлений, Подключение и аналитика платежей, ASO-инструменты, Крэшлитика.

В статье рассмотрим зачем эти сервисы нужны и рассмотрим основных игроков в каждом сегменте.

Читать далее

Настало время офигительных историй. Кастомные транзишены в iOS. [2/2]

Время на прочтение7 мин
Охват и читатели4.8K

В прошлой статье мы реализовали анимацию ZoomIn/ZoomOut для открытия и закрытия экрана с историями.

В этот раз мы прокачаем StoryBaseViewController и реализуем кастомные анимации при переходе между историями.

Читать далее

Как реализовать таб-бар с нестандартной кнопкой: CAShapeLayer и UIResponderChain

Время на прочтение10 мин
Охват и читатели15K

Привет, Хабр!

Дизайн играет важную роль в мобильном приложении, напрямую влияя на его успех. На этапе проектирования интерфейса часто отдается предпочтение нестандартным, иногда даже интерактивным, элементам, которые будут притягивать взгляд, способствуя повышению показателя user retention (удержание пользователей).

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

Читать далее

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

Люди подозревают, что технологии — отстой, потому что они на самом деле отстой

Время на прочтение3 мин
Охват и читатели46K
image

Джей Ситтер в своей статье "Люди подозревают, что технологии — отстой" пишет о людях, которые продолжают использовать технологии, несмотря на серьезные неприятности, такие как очень тусклый экран или постоянные всплывающие окна, и ничего не делают с этим. Он делает вывод:
Если бы мой экран был на 5% яркости или если бы я не мог использовать свой телефон, не нажимая «Отмена» каждые пять секунд, я бы тратил часы или дни на Google, пытаясь найти решение, если бы это было то, что мне нужно. То, что эти люди в основном просто мирились с проблемами, означает, что для них эти проблемы не могли быть заметно хуже, чем сама технология в своей основе.
Эти примеры немного экстремальны, но важно помнить, что они реальны. Это не преувеличение. Это происходило.

В обсуждениях в Твиттере люди продолжают отвечать, что этим пользователям следует:

  • сделать что-нибудь с этим,
  • искать замену,
  • или просто не делать ничего.

И я бы согласился: если бы это был единичный случай, конечно, надо было бы что-то с этим сделать! Дело в том, что это происходит постоянно, каждый день, несколько раз в день, и один человек может посвятить этому лишь определенное количество времени. Поток мелких неприятностей настолько велик, что люди просто устали иметь с ними дело! И нет, лучшей альтернативы нет.

Чтобы доказать свою точку зрения, я решил записывать каждое прерванное действие в течение одного дня. Вот полный список, который я написал вчера, 24 сентября 2020 года:

Дайджест интересных материалов для мобильного разработчика #388 (28 марта — 4 апреля)

Время на прочтение4 мин
Охват и читатели3.2K
В новой недельной подборке архитектурные паттерны и новая WWDC21, распознавание карт и 13 подвохов мобильного приложения, траты пользователей, тестирование иконок и многое другое!

Читать дальше →

Подключаем нагрудный датчик пульса по Bluetooth на Swift

Время на прочтение12 мин
Охват и читатели9.6K

Подключаем нагрудный пульсометр к IOS устройству на Swift по протоколу Bluetooth без смс и регистраций.

У меня был китайский пульсометр CooSpo, MacBook, iPhone и немного свободного времени, чтобы написать данный гайд, так как информации в интернете по данной теме не совсем много, либо она не переведена на русский язык. Поэтому считаю, что данная статья будет полезна новичкам для освоения данной технологии. В принципе, вместо пульсометра может оказаться любой девайс, поддерживающий Bluetooth, поэтому вам точно будет полезно.

Читать полностью...

Почему мы не обновляли приложение ВКонтакте для iPad пять лет, а теперь обновили

Время на прочтение8 мин
Охват и читатели8.6K

Да, сегодня 1 апреля. Нет, это не шутка. Про iPad тоже не шутка.

С этого дня (и навсегда) iOS-приложение ВКонтакте станет универсальным — все обновления будут доступны одновременно на iPhone и iPad.

Я Матвей Правосудов, старший продуктовый дизайнер ВКонтакте. Расскажу про дизайн универсального приложения: от концептов и возникших проблем до принятых решений и итогового результата. Бонусом — советы (на случай, если вы окажетесь в похожей ситуации) и публичные макеты в Figma для всех желающих.

Читать далее

Разрабатываем своего первого голосового ассистента на iOS

Время на прочтение11 мин
Охват и читатели4.7K

За последнее время значимость голосовых функций и звука значительно выросла. Примером тому может служить уже громкая история запуска приложения Clubhouse, голосовых ассистентов Сбера и общего оживления интереса со стороны пользователей, компаний и инвесторов к звуку на мобильных устройствах.

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

В этой статье я бы хотел рассмотреть пример разработки голосового помощника на платформе iOS, используя язык Swift.

Читать далее

Программа Mobius: Android, iOS и всё, что между ними

Время на прочтение17 мин
Охват и читатели3.9K


Совсем скоро пройдёт очередной Mobius (13-16 апреля, онлайн). И теперь, когда известна его программа, пришло время рассказать Хабру, что за доклады там представят.


У конференции будет четыре параллельных трека:


  • iOS
  • Android
  • «кроссплатформенный» (Flutter, Kotlin Multiplatform)
  • «универсальный» (мобильные темы, не зависящие от платформы)

Порой сложно нащупать грань между разными категориями: в iOS-треке есть пара докладов, которые тоже рассматривают Kotlin Multiplatform, но конкретно с iOS-стороны. Поэтому учтите, что где-то деление оказывается условным. А теперь, с этим осознанием, можно погружаться.

Читать дальше →