Как стать автором
Поиск
Написать публикацию
Обновить
145.39

Разработка мобильных приложений *

Android, iOS, Windows Phone и прочие

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

Секретная акция, или Как выйти за пределы UICollectionView

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

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

А это возможно? Сначала казалось, что нет. Но мы это сделали. Нарисовали, анимировали и спрятали за пределы экрана ячейку с секретной акцией, у которой даже отрывается корешок! И всё с помощью UICollectionView. О том, как у нас это получилось, я сегодня и расскажу.

Читать далее

Вопперы и табы: как мы сделали меню для Burger King

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

В прошлом году у нашей Android-команды на проекте BurgerKing был мощный вызов: сделать редизайн главного меню. Мы решили написать его с нуля. Так было бы проще организовать А/В тест и потом избавиться от старого меню (не волнуйтесь, при создании нового меню ни один воппер не пострадал 😉).

Сегодня мы расскажем о том, как мы делали часть этой фичи — табы и саб-табы.

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

Детство с синей изолентой, профессиональные трудности и путь к успеху девушки в IT: опыт Ани Жарковой

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

Эта статья — текстовый вариант выпуска подкаста Girls&Code. Поговорили с Аней о том, каково сейчас девушкам входить в IT, есть ли в индустрии сексизм и как вкатиться и стать заметнее.

— Расскажи, пожалуйста, как ты попала в IT и когда поняла, что это и есть твоё призвание? 

— Я из семьи инженеров. Моё детство прошло с синей изолентой и паяльником. Папа у меня — инженер-электронщик, у нас дома было много измерительных приборов и книг с непонятными, но завораживающими значками. В один прекрасный день мама пришла с работы и пожаловалась, что целый день мучилась с какой-то программой — не могла ввести текст. Я сказала: «Напишу тебе программу, которая будет работать». Мне тогда было лет пять-шесть. 

Когда я училась в школе, пришло время выбирать, куда поступать. Мне нравилось всё: и языки, и математика, и естественные науки.

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

Конечно, возможны погрешности. У меня, например, на одном из этапов тестирования было весьма приподнятое состояние, и результаты показали, что мне непременно нужно в театральный или на журналистику, то есть туда, где работа с публикой или на публику. Сейчас я регулярно закрываю этот гештальт с помощью публичных выступлений и преподавания. Но основная рекомендация была — идти в программисты, потому что у меня были и соответствующие интересы, и способности, включая концентрацию внимания и глубокое погружение в предмет. Что интересно, тогда считалось, что программисты минимально общаются с людьми во время работы. Однако, я не только разработчик уровня лид и занимающийся работой тим/техлида на разных проектах, я ещё и руководитель практики в Usetech. И с уверенностью могу утверждать, что без общения в профессии всё равно не обойтись. Неважно, менторишь ли ты младших специалистов, решаешь вопросы с руководством или командой, преподаешь свой предмет — уметь общаться нужно.

Читать далее

PWA vs Native: где приложения для iOS и Android больше никогда не пригодятся

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

К прогрессивным веб-приложениям у разработчиков, бизнеса и пользователей все еще очень много вопросов о безопасности и технических возможностях. Но и адвокаты PWA не молчат. Мы с командой Clevertec обсудили аргументы за и против и делимся результатами с вами.

Узнать все "за" и "против" PWA

Геймификация в e-commerce: как превратить игры в прибыль

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

Геймификация превращает обычное взаимодействие с приложением в увлекательный квест: каждый клик — это шаг к следующему уровню, каждое действие приносит бонусы, баллы, достижения. Пользователи возвращаются, чтобы закрыть миссию и получить награду, а бизнес — получает рост LTV и продажи. 

В этой статье аналитик CleverPumpkin Алёна Сорокина расскажет про уже привычные и набирающие популярность виды геймификации. А еще о том, с какими сложностями можно столкнуться и как интегрировать игры в маркетинговую стратегию.

Читать далее

Включаем VoLTE на Pixel 9

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

О, сколько нам открытий чудных
Готовит просвещенья дух

В данной статье пойдет речь о VoLTE, о Pixel 9, и о том, как включить VoLTE (и заодно VoWiFi) на данном устройстве.

Читать далее

Гуляем по городу через воспоминания: концепт приложения для прогулок

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

Если вы хоть раз вбивали в Google или Яндекс что-то вроде «куда сходить в Москве», «необычные маршруты по городу» или «экскурсии без гида», то вы знаете — в ответ чаще всего всплывает список из пяти переоценённых мест и пары скопированных текстов из TripAdvisor.

Я проверила десятки сервисов — от стандартных туристических агрегаторов до приложений с «альтернативными» маршрутами. Но везде натыкалась на одно и то же: коммерческие рекомендации, переписанные друг у друга списки "топ-10 мест" и полное отсутствие настоящей городской атмосферы.

А что, если маршрут по городу можно было бы придумать самому — не просто накидав точки, а собрав историю? С фото, видео, аудио, воспоминаниями, текстами, вайбом. Или, возможно, быстро открыть такой маршрут от коренного жителя района и пройтись по самым скрытым и уникальным местам, по-новому взглянув на город?

Читать далее

5 причин плохого настроения. История одного Flutter-проекта, который заставил нас поломать голову

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

Привет! На связи Никита Грибков, Flutter-разработчик AGIMA. В прошлом году я стал свидетелем жутких событий, которые разворачивались на одном из наших проектов. В сущности, жуткими они были только потому, что техзадание состояло из сложных и нестандартных задач — но всё-таки они изрядно потрепали нам нервы.

Времени на всё про всё, как водится, было по минимуму. Мы закатали рукава, вооружились всеми доступными инструментами — и начали подбирать решение для каждой проблемы. Ниже опишу, что представлял собой проект и какие именно задачи заставили нас поднапрячься.

Читать далее

Формализация принципа Open/Closed: как сохранить обратную совместимость с помощью SOLID

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

Привет, Хабр! Меня зовут Дмитрий Сурков, я iOS-разработчик приложения для среднего и малого бизнеса ПСБ. Наше приложение состоит из различных модулей и внутренних библиотек, которые связаны между собой, поэтому важно сохранять гибкость и обратную совместимость во время разработки. В этой статье мы разберемся, как вносимые изменения нарушают эти правила, а также как это исправить.

Читать далее

Протестировал две российские системы работы с кодом. Что у меня (не) получилось

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

Как специалисту из области DevOps мне необходимо часто использовать различные инструменты автоматизации для решения рабочих задач. А еще я стараюсь применять некоторые механизмы в своих пет-проектах. Например, когда я занялся разработкой на ОС «Аврора», одной из первых насущных задач стала настройка пайплайна сборки приложений. В исходной версии использовал GitLab, так как активно пользовался им и завел в проекты несколько виртуальных машин для сборок. Однако в последнее время знакомые и коллеги начали нередко заводить проекты в других сервисах. Мне стало интересно — можно ли найти на российском рынке что-то конкурентоспособное?

Давайте разберемся!

Передаём данные с мобильных устройств в сервисы через каналы радиосвязи

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

Привет, Хабр! На связи Рафис Гатауллин, ведущий эксперт отдела фронт-энд, и Рамис Закиев, ведущий эксперт отдела аналитики в «Татнефть Цифровые Технологии». В этой статье по мотивам нашего доклада на Industrial++ расскажем, об опыте внедрения мобильного решения, которое позволило оптимизировать процессы в цехах нефтедобычи, где нет условий для работы обычных сетей связи.

Поговорим о том, как мы реализовали передачу данных с мобильных устройств к сервисам по каналу радиосвязи стандарта TETRA. Об опыте подключения и взаимодействия с SDK, написанном на Java, в мобильном приложении на Xamarin. И о подходах, которые использовали для оптимизации трафика при передаче данных приложения и данных геопозиционирования.

Читать далее

Где твои чаевые, дружище? No tip, no trip

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

Сервисы по доставке готовой еды и продуктов встроили блок с чаевыми прямо во флоу оформления заказа: Glovo, Яндекс.Еда, Snoonu, Wolt и другие.

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

Читать далее

Примеры использования File Templates для типовых сценариев, где требуется шаблонный код

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

Всем привет! На связи Дима Котиков, и это вторая статья из цикла про File Templates. В предыдущей части мы описали проблему с необходимостью написания шаблонного кода и вариантами решения, познакомились с инструментом шаблонов File Templates и разобрали синтаксис написания шаблонов.

В этой статье перейдем к практике — напишем шаблоны для кода типового экрана SomeFeature мобильного приложения.

Читать далее

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

Уменьшаем написание boilerplate с помощью File Templates

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

Всем привет! На связи Дима Котиков, и я все еще люблю разбираться в технологиях, разрабатывать под Android и KMP и пить латте на фундучном молоке :)

Рассказываю о генерации файлов с boilerplate-кодом с помощью удобного механизма задания File Templates в средах разработки Intellij. File Templates позволяет в пару кликов создавать несколько файлов с каким-либо boilerplate-кодом. Хоть статья приводит примеры создания File Templates для Android/Kotlin Multiplatform, она может быть полезна всем, кто работает в средах разработки от Intellij.

Читать далее

SwiftUI: Всё, что вам нужно знать о модификаторе containerRelativeFrame (и немного больше)

Уровень сложностиСложный
Время на прочтение17 мин
Количество просмотров2.1K

На WWDC 2023 компания Apple представила модификатор представления containerRelativeFrame для SwiftUI. Этот модификатор упрощает некоторые операции размещения элементов на экране, которые ранее было сложно выполнить обычными методами.

В этой статье мы подробно рассмотрим модификатор containerRelativeFrame, его определение, правила компоновки, примеры использования и важные соображения. Чтобы еще больше расширить наше понимание его функциональных возможностей, в конце статьи мы также создадим обратно совместимую реплику containerRelativeFrame для старых версий SwiftUI.

Читать далее

Как подружить Flutter и Huawei — настраиваем Flutter. Часть 2

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

Меня зовут Самир, я Flutter-разработчик в Surf, и мы продолжаем разбираться в «дружбе» Huawei и Flutter и публикации в App Gallery.

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

VPN Протоколы: Обзор Самых Популярных

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

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

на пользовательский опыт. Один из ключевых факторов — это выбор VPN-протокола, который определяет скорость, стабильность и уровень безопасности соединения.

Эта статья подробно разберёт самые популярные VPN-протоколы, их особенности, преимущества и недостатки, а также предложит примеры использования каждого из них.

Кстати, все картиночки я брал из этих, ваших — интернетах, но разбирал их и пояснял я соло, специально для вас )

Читать далее

Самые важные пакеты в экосистеме Dart и Flutter на Pub 2024

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

Компания Very Good Ventures провела исследование и опубликовала рейтинг самых важных пакетов в экосистеме Dart и Flutter. 

Рассказываем, какие пакеты вошли в топ — от независимых разработчиков, компаний и сообщества. 

Читать далее

Мобильная разработка за неделю #557 (23 — 29 сентября)

Время на прочтение4 мин
Количество просмотров1.8K
В этом выпуске сетчатые градиенты и курощение виджетов, сломанная Android-разработка и инструментирование байт-кода Java во имя великого блага, единая биометрическая система во Flutter-приложении, портирование игр на Аврору, видеозвонки с Лили и многое другое. Подключайтесь!

Подписывайтесь на наш Telegram-канал Mobile Insights, где еще больше материалов для мобильных разработчиков. А в IT Insights — много об интересном коде и технологиях.

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

Реализация push-уведомлений из web в мобильное приложение для новичков

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

Всем привет! Меня зовут Лида Анисимова, я backend разработчик продукта — платформы мотивации сотрудников Тил Эйчар. В этой статье хочу рассказать о нашем опыте реализации push-уведомлений. Если вы, как и я полгода назад, ничего не знаете о том, как работают push-уведомления — эта статья для вас. Расскажу о том, с какими трудностями мы столкнулись, покажу, как отправить первый push и какие данные вам могут понадобиться.

Читать далее

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