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

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

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

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

История одного модального окна или переходим с UIKit на SwiftUI. Часть 3. ProgressView vs SkeletonView

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

Продолжаю эпопею с модальными экранами на SwiftUI. Но сегодня больше кода. Была задача, сделать ProgressView и SkeletonView. Вдруг кому-то пригодится, показываю.

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

Читать далее

App Intents: новые возможности для разработчиков в iOS 18

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

Привет! Меня зовут Настя Ищенко. Я — iOS-разработчик в KTS.

Эта статья поможет узнать, что такое App Intents и как их использовать для создания сложных сценариев, которые расширят возможности вашего приложения. А еще я расскажу об обновлениях фреймворка App Intents, представленных на WWDC24.

Читать далее

Telegram web apps как альтернатива мобильным приложениям

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

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

Читать далее

Flutter Web. Часть 2

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

Привет, меня зовут Максим, я Flutter-разработчик в компании Surf.

Мы продолжаем рассказывать про Flutter Web. И это вторая статья.

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

Как я перешел из веб разработки в мобильную?

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

Это был 2014-й год. После 3-х лет работы в маленькой аутсорс компании я набрался опыта в совершенно разных проектах. К тому моменту я заканчивал магистратуру и готовился перейти на фулл-тайм. Однако, мне нужно было больше денег.

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

Читать далее

Битва титанов: натив, кроссплатформа и PWA – ищем плюсы и минусы на каждом этапе разработки. Часть 2

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

Привет, Хабр. Это продолжение разговора, который мы начали неделю назад. В первой части уже разобрались со сравнениями, начиная с идеи приложения и заканчивая разработкой. Посмотрим, что там с тестированием, поддержкой и итоговой стоимостью проектов.

Читать далее

Обзор решений описания и обновления state экрана в Сompose

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

Всем привет. В этой статье я предлагаю рассмотреть, как в Compose можно описать, обновить и масштабировать состояние экрана с помощью паттерна MVI.

Читать далее

Антитренды в мобильной разработке на Flutter

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

Привет, Хабр! Меня зовут Екатерина, я Flutter-разработчик в компании Friflex. Мы создаем мобильные приложения и сайты для бизнеса.

Flutter — один из самых популярных фреймворков для мобильной разработки. В этом сентябре количество вопросов с одноименным тегом на Stack Overflow превысило 179 тысяч.

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

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

Читать

Компьютерное зрение на С++: подключаем ML-библиотеки и обрабатываем результаты поиска объектов

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

Привет, Хабр! Меня зовут Кирилл Колодяжный, я разрабатываю системы хранения данных в YADRO и изучаю нестандартные подходы к машинному обучению: создаю ML-проекты на С++. 

Это вторая часть цикла о разработке приложения для обнаружения предметов на С++. В прошлом материале мы выяснили, как создать проект в IDE Android Studio, реализовать сессию непрерывного захвата и преобразовать изображение в матрицу OpenCV. Ссылку вы найдете в конце статьи.

В этой статье продолжим реализацию проекта и обсудим следующие шаги:

• Как подключить к проекту библиотеки машинного обучения PyTorch и NCNN.

• Как получить модели YOLOv5 и YOLOv4 для использования на мобильном устройстве.

• Как реализовать инференс моделей для обнаружения объектов.

• Как обработать результаты работы моделей YOLO, реализовав алгоритмы Non-Maximum-Suppression и Intersection-Over-Union.

В конце сравним производительность PyTorch и NCNN и решим, какой фреймворк подойдет для задачи лучше.

Читать далее

Как я писал суперкастомизированное Android-приложение в 2024 году

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров6.4K
Как я писал супер кастомизированное Android приложение в 2024 году

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

Сравнение операторов RxJava 3 и Kotlin Coroutines Flow

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

Привет, Хабр! Меня зовут Константинов Александр, я Android-разработчик в «Студии Олега Чулакова». Сегодня мы сравим операторы RxJava 3 и Flow. Статья будет полезна как для изучения операторов, так и для более легкого перехода с RxJava на Flow.

Читать далее

Диалог — часть навигации или нет?

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

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

Читать далее

Мобильная разработка за неделю #562 (28 октября — 4 ноября)

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.5K
В новом дайджесте ковка Metal и поиск регрессий в Compose, полностью переделанный React Native и форк Flutter, тактильный отклик в мобильных приложениях, сравнение размеров iOS и Android приложений, самые скачиваемые и зарабатывающие приложения в России в октябре и многое другое. Подключайтесь!

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

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

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

Без теории к практике: как уловить радиоволну инклюзивного дизайна, опираясь на опыт реальных людей

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

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

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

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

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

«Универсальный дизайн» — концепт, придуманный американским архитектором Рональдом Л. Мейсом. Он выделил 7 принципов «универсального дизайна», которые описывают, как создать хорошие условия для людей разного возраста и способностей. Он верил, что простой доступ к зданиям и свобода движения сделают жизнь проще для всех. Селвин Голдсмит переформулировал цитату Мейса в своей книге «Проектирование для инвалидов». Он придумал концепт «свободного дизайна». Затем эти термины стали известны как «инклюзивный» и «доступный дизайн». Так чем они отличаются?

Читать далее

Малоизвестные фичи SwiftUI

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

Я уже 2 месяца прохожу обучение в онлайн‑школе и у нас на этой неделе был открытый урок, нужно было подготовить доклад на тему «Малоизвестные фичи или особенности языка Swift»

Так вот — я решила погуглить этот вопрос, подготовилась, написала код. Но когда дело дошло до самого выступления, оказалось, что говорить ртом — это не так‑то и просто. Да и в целом выступать, даже в Zoom.

Тем не менее, поделюсь с вами маленькими фишечками, которые я нашла. Уровень легкий, в отличие от меня там ребята подготовили нормальные доклады про SPM и пр. Я же решила начать с простых вещей, которые, тем не менее, мне были неизвестны. Надеюсь кому‑то тоже окажется полезным.

Читать далее

Три пути к Flutter: истории разработчиков, которые справились

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

Flutter-разработка набирает популярность. И мы в «Финаме» заметили, что начинающим специалистам бывает не так-то просто понять, как стать разработчиком, как сориентироваться в новой технологии. Поэтому в этой публикации мы хотим дать слово трем нашим молодым сотрудникам, которые расскажут, как они стали Flutter-разработчиками, какие технологии им пришлось для этого освоить и какие трудности преодолеть.

Статья может быть полезна всем, кто ищет дорожные карты этого пути: с чего начать и какие скилы освоить, чтобы начать карьеру в мире Flutter, какие могут быть подводные камни и особенно — на что обратить внимание молодым специалистам.

Читать далее

Внедрение электронной цифровой подписи в мобильное приложение на Android

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

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

Сегодня мы хотим поделиться решением интересной и новой для нас задачи: нужно встроить поддержу ЭЦП в мобильное приложение заказчика. Бизнес-процесс подразумевает формирование неких документов в мобильном приложении с дальнейшей их отправкой на сервер и последующей обработкой. Поскольку документы без подписи не имеют юридической силы, пользователям заказчика приходилось распечатывать созданные документы для их подписания вручную. Вот этот процесс и было решено автоматизировать с целью экономии времени и ресурсов.

Читать далее

Битва титанов: натив, кроссплатформа и PWA — ищем плюсы и минусы на каждом этапе разработки

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

Привет, Хабр. Мы уже сравнивали натив и PWA в этой статье, но без кроссплатформы эта картина действительно была неполной. Поэтому мы запарились, разложили разработку на этапы и на каждом нашли честные плюсы и минусы каждой технологии. Погнали.

Читать далее

Как написать Android приложение, которое не будет стыдно положить в портфолио. Гайд для новичков в Android разработке

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

Гайд по написанию Android-приложения с нуля, используя лучшие архитектурные подходы – Clean Architecture и MVI, они обеспечат поддерживаемость, тестируемость и масштабируемость приложения, что особенно важно для сложных и долгосрочных проектов.

Читать далее

React Native полностью переделан

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

После 6 лет разработки команда React Native представила полностью переписанную архитектуру фреймворка (0.76) – самое значительное обновление с момента создания React Native. Это результат масштабной работы над улучшением производительности, стабильности и возможностей платформы.

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

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