Все потоки
Поиск
Написать публикацию
Обновить
324.55

Android *

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

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

DPC (Device Policy Controller): админим блокировку экрана в Android

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров2.7K
Если вы занимаетесь защитой от несанкционированного доступа к устройству, то наверняка ваш самый первый и самый простой шаг — это защита разблокировки экрана. Графический пароль, цифровой PIN-код, доступ по биометрии (например, скан отпечатка пальцев, распознавание лица) и так далее — эти механизмы знает каждый.



Я же расскажу, как можно настроить способ блокировки/разблокировки экрана с помощью Device Policy Controller (DPC) — приложения-администратора нужного профиля устройства (если на устройстве развернуты несколько профилей — например, и рабочий, и личный) или же всего устройства в целом.

Статья будет полезна тем, кто интересуется безопасностью мобильных устройств и различными способами управления ею. А в конце, если тема будет вам интересна, я добавлю еще несколько полезных ссылок на посты моих коллег по команде мобильной разработки «Лаборатории Касперского».
Читать дальше →

Apex Architecture: Модульность и стабильность в Android-разработке

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

Архитектура, с которой мы работаем изо дня в день, оставляет желать лучшего. Иначе как объяснить тот хаос и стресс, который каждый из нас испытывает, приходя на новое место работы? В большинстве случаев самым сложным слоем является UI, и эта сложность зачастую обусловлена не разнообразием элементов интерфейса, а неправильным подходом к архитектуре этого слоя. Отсюда можно сделать вывод, что нельзя дробить приложение в привычной форме: на UI, domain и data. Необходимо добавить еще один дочерний слой — ui/viewModel, и на этом слое, одном из самых важных, я хочу акцентировать ваше внимание.

Меня зовут Илья и мы начинаем! 

Читать далее

Адаптеры в Android: «сервируем» данные красиво

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

В Android разработке адаптер — это компонент, который служит мостом между источником данных (например, списком элементов) и элементом пользовательского интерфейса (например, списком или сеткой). Он преобразует каждый элемент данных в визуальное представление, которое пользователь видит на экране.

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

Погнали вглубь!

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

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

Цель статьи: Показать и продемонстрировать кейс как можно перейти в разработку из позиции инженера технической поддержки.

Основные тезисы:

1) Важный пункт статьи – необходимо УЖЕ быть в IT и работать в этом направлении;

2) На данный момент я работаю Application менеджером, но уже поправил пару багов и реализовал несколько фич. Как?

3) Сложности, переживания? Это все профит!

4) GrayLog. Данный инструмент улучшает насмотренность;

5) Изучайте LogCat – это мощный инструмент для первичной аналитики;

6) Подведение итогов и планы на будущее.

Читать далее

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

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

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

Читать далее

Поющий молится дважды или пишем приложение в помощь хористу

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

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

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

Приятного чтения!

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

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

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

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

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

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

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

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

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

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

Читать далее

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

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

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

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

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

Привет, Хабр! Меня зовут Константинов Александр, я 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 — много об интересном коде и технологиях.

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

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

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

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

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

Читать далее

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

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

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

Читать далее

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

Vivaldi 7.0 для Android

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

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

Вот что мы приготовили:

Читать далее

Тактильный отклик в мобильных приложениях: что это такое, когда использовать и зачем?

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

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

Прочитать материал

Главный метод Android-приложения

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

Если вы когда-нибудь писали «Hello World» на Java (или любом другом C-подобном языке), то наверняка делали это в статическом методе main. Этот метод вызывается в JVM и является точкой входа любой Java программы.

Но при разработке приложений для Android вы возможно, как и я до недавнего времени, ни разу метод main не встречали. Создается ощущение, что его вообще не существует, а при нажатии на иконку в лаунчере наши Application и Activity создаются какими-то волшебными гномами, спрятанными в устройстве.

Читать далее

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

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

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

Читать далее

Изолируем Whatsapp с помощью Separated apps в KNOX Service Plugin (KSP)

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

Допустим такой кейс: cотрудники компании использовали корпоративные устройства под управлением EMM системы (Enterprise Mobility Management), политики которой запрещали WhatsApp, что было неудобно сотрудникам, потому что партнёры и клиенты компании иногда предпочитали общение в этом приложении.

«Левым» приложениям не доверяют, потому что они могут совать нос в конфиденциальные данные компании или сканировать частную корпоративную сеть. Как тогда разрешить ситуацию? В конце статьи бонусом расскажу об условиях, при которых получение root прав или прошивка неофициальной ОС превращает смартфон или планшет Samsung в «кирпич»

Читать далее

Кастомный Date and Time picker как в Telegram на Kotlin Jetpack Compose

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

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

Читать далее

Мобильная разработка за неделю #561 (21 — 27 октября)

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров1.7K
В этом выпуске ключевые изменения в UIKit и восстановление удаленных сообщений в Telegram, самые весёлые TODO из Android-фреймворка и короткий путь с Senior-ами, инфляция званий, сравнение доходов App Store и Google Play, Yolo на пятирублёвой монете и многое другое. Подключайтесь!

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

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