Обновить
128K+

Android *

Пишем под самую популярную мобильную ОС

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

Приключения онлайн-кинотеатра Premier в Android TV, или Как мы javascript внедряли

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

Привет, Хабр! Меня зовут Артем, и вот уже два года, как я работаю над онлайн-кинотеатром PREMIER. Эта история началась, как и многие другие, со слов тимлида: “Артем, есть интересная задачка”.

Ситуация была следующая: библиотека, над интеграцией которой велись работы, не имела поддержки Android TV. Для этой библиотеки существовала мобильная версия и версия для веб-клиентов, написанная на JavaScript.

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

Что из этого вышло - читайте далее. Статья будет полезна тем, кто любит смелые эксперименты, работает с Android или Android TV и знает, что такое Javascript.

Читать далее

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

Время на прочтение4 мин
Охват и читатели2.2K
В нашем новом дайджесте новая навигация в iOS и известность команд разработки, умная камера Яндекса и ключ к тайной комнате, конец программирования, технологические тренды 2023 и многое другое!

Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

Как составить базу знаний (Как не умереть в море обучающих материалов )

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

О том, как не потеряться в огромной куче информации и как ее структурировать (не скажу что правильно, но хоть какой то шаблон).

Так же много полезных ссылок, как в самой статье, так и в базе знаний (кликабельность).

Оценить "базу знаний"

Передача цифровых данных по рации с помощью мобильного приложения. Часть 1

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

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

Читать далее

Пишем собственный ColorWheel на основе представления (View) в Android

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

Эта статья рассказывает о моём опыте создания пользовательских представлений под Android. Со временем это всё переросло в целую библиотеку.

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

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

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

Адаптируем Android-приложение для незрячих людей. Часть 2: Jetpack Compose

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

По данным ВОЗ, в мире более миллиарда человек обладает с той или иной формой инвалидности. Поэтому Accessibility, или доступность, — важная штука в разработке программного обеспечения, особенно под мобильные платформы.

Адаптировать View-интерфейс для людей с ограниченными возможностями не так трудоёмко, как кажется: об этом мы рассказывали в предыдущей статье.

Сегодня — про Accessibility в Jetpack Compose: в нём сделать доступный графический интерфейс приложения ещё легче, чем на View. Разбираемся, как устроена поддержка доступности в Compose и какие особенности учесть при разработке.

Читать далее

Особенности разработки TWA в 2022 году

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

Настоящая статья поможет сэкономить время разработчиков и выбрать правильные инструменты для разработки TWA в 2022 году.

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

Будни техпода. Разворачиваем Android на Hyper-V

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

Вопрос, о котором хотелось бы сегодня поговорить, мне кажется, я слышу ежедневно, по несколько раз на дню. Точно не помню, но, мне кажется, что этот вопрос был первым, с которым я столкнулся на данной должности. Звучит он обычно так: «Как мне установить эмулятор Android на ваш сервер?». Серьёзно, когда я только начинал работать, я даже представить не мог, насколько часто я буду отвечать на данный вопрос.
Читать дальше →

4 видео для мобильных разработчиков. Анимации в React Native, keyboard avoiding в SwiftUI и другое

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

Привет! На связи tech-команда СберМаркета. 13 октября мы провели онлайн-митап для iOS и Android-разработчиков. Хотим поделиться с аудиторией Хабра видео с докладами оттуда. Рассказываем о нашем опыте внедрения SwiftUI и делимся кейсами на ReactNative.

Читать далее

Неочевидное про Fragment API. Часть 4. Анимации и меню

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

Всем привет! С вами снова Максим Бредихин, Android-разработчик в Тинькофф. Мы добрались до заключительной части серии про интересные моменты из Fragment API. Занимайте лучшие места, мы начинаем!

Читать далее

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

Время на прочтение4 мин
Охват и читатели2.4K
В новом выпуске Dynamic Island и Live Activities, MVI и State Machine, сложные интерфейсы, подготовка к собеседованиям, маркетинг приложений в кризис, реверс инжиниринг кормушки для кошек и многое другое!

Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

Deep Dive Into Deep Link. Часть 3. Оболочка ОС, приложение

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

Привет, Хабр! Мы продолжаем серию докладов Deep Dive Into Deep Link. В прошлый раз мы разобрали 2 из 7 проблем, которые встретились на нашем пути. Сегодня мы узнаем, как One UI обрабатывает web link, чем EMUI отличается от стандартной оболочки Android. Есть ли разница между переходами по deep link в приложениях Messaging, Gmail, Telegram и чем отличился VK…

Читать далее

Найдите 10 отличий. Тестируем сравнением снимков экрана с образцом

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

При тестировании мобильных приложений нередко возникает необходимость проверить корректность верстки визуальных элементов и их правильное отображение в различных состояниях приложения. К сожалению, возможностей библиотек тестирования не всегда достаточно для автоматизации проверки визуальных элементов и, в лучшем случае, тестировщик получает возможность проверить размеры элемента, наличие перекрытий с другими элементами и внутренние свойства View, но это не всегда помогает дать однозначный ответ - не была ли сломана верстка в последнем обновлении? Здесь на помощь приходят инструменты для тестирования сравнением с образцом и в этой статье мы рассмотрим подходы к тестированию View и Composable (для Jetpack Compose) с использованием собственных механизмов библиотек и сторонних решений для определения разности между фактическим и эталонным снимков.

Читать далее

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

Vivaldi 5.5 для Android — Быстро и красиво

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

Не секрет, что мобильные браузеры часто сильно отличаются от своих десктопных вариаций в силу различных объективных причин. В связи с этим пользователям приходится не только переключаться между устройствами, но и между стилем работы с браузером. Мы стараемся сделать такое переключение максимально удобным, чему доказательство - наша новая стабильная версия Vivaldi 5.5 для Android.

Читать далее

MVI и State Machine — объединяем концепции. Визуализация и анализ диаграммы состояний в Android и KMM проектах

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


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


В итоге мы получаем конечный автомат.


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


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


Под катом я расскажу подробнее о нашем подходе, о том, как устроена библиотека, и как начать ее использовать.

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

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

Время на прочтение4 мин
Охват и читатели2.5K
В нашем новом дайджесте анимации и расстановка приоритетов, комфортные WebView и удобные бенчмарки, все откладывающая победа PWA, рабочие процессы, шаринг еды, снижение доходов приложений и многое другое!

Подключайтесь к нашему Telegram-каналу Mobile Insights, где подборки статей и новостей выходят каждый день.

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

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

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

Мобильная разработка — одно из актуальных направлений в IT-сфере. Мир вокруг нас стремительно меняется, но, несмотря на это, люди по-прежнему решают множество своих задач с помощью телефонов. Такси, шопинг, обучение — всё это доступно в виде мобильных приложений. А за создание этих приложений отвечают мобильные разработчики. 

Летом в Яндекс Практикуме стартовало два курса по мобильной разработке: «Android-разработчик» и «iOS-разработчик». О том, что особенного в каждой программе, мы поговорили с командой Практикума, которая их создавала.

Читать далее

Jetpack Compose Layouts

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

Иногда для вёрстки сложных экранов не хватает Row, Column, Box или других встроенных контейнеров, тогда нам приходится писать свои собственные. В этой статье мы напишем Row, который переносит дочерние элементы на следующую строку в случае недостатка места.

Читать далее

Удобный бенчмаркинг с Jetpack Benchmark Library. Макро- и микробенчмарки

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

Что за зверь такой этот бенчмаркинг Android-приложений? Разберемся с тем, для чего он нужен, погрузимся в детали работы Jetpack Benchmark Library и получим знания для написания первого бенчмарк-теста. 

Помогать в этом деле буду я, Диана Федотова, Android-разработчица из Технократии.

Узнать про бенчмаркинг

Неочевидное про Fragment API. Часть 3. Навигация

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

Всем привет! На связи Максим Бредихин, Android-разработчик в Тинькофф. А это — третья статья об интересных моментах из Fragment API, о которых вы, возможно, не знали.

Наливайте чай, садитесь поудобнее и приятного чтения!

Читать далее