Как стать автором
Обновить
241.98

Разработка под Android *

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

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

Android Work Profile: как безопасно поделить свой смартфон между домом и работой

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

Для тех, кто работает удаленно, провести грань между решаемыми задачами и свободным временем может быть непросто. Но я сейчас буду говорить не про work-life balance, а про Android Work Profile — технологию для управления корпоративными устройствами, которая создает разграничение персонального и рабочего пространства в них.



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


Сотрудники же имеют возможность включать и выключать рабочий профиль на своих устройствах в любое время. Когда рабочий профиль выключен, все приложения в нем «отключены» — это означает, что они не используют мобильные данные и не показывают уведомления пользователю. Между тем личный профиль можно использовать в обычном режиме, а уведомления, связанные с работой, останутся в silent-режиме. Удобно? Очень, особенно если устройство — ваше личное, а не корпоративное (BYOD). Об этом и поговорим.

Читать дальше →
Всего голосов 20: ↑20 и ↓0+20
Комментарии4

Kotlin Multiplatform в мобильной разработке. Рецепты общего кода для Android и iOS

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

Kotlin Multiplatform — технология, которая позволяет использовать общую кодовую базу для бизнес-логики приложений разных платформ и писать платформенный код только там, где это необходимо. Хотя последнее время о ней много и часто говорят, найти информацию о нюансах внедрения KMP в проекты довольно сложно. В этом мы убедились лично, когда пытались разобраться, что и как именно можно безболезненно выносить в common-модуль. 

Читать далее
Всего голосов 10: ↑9 и ↓1+8
Комментарии7

Kotlin под капотом: inline функции

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

Многие разработчики не понимают в чем профит от использования inline функций и в каких случаях их нужно использовать. Для чего нужен crossinline и как работает reified. Разбираемся как это работает на уровне байткода, в котором хорошо видно всю суть inline функций kotlin.

Читать далее
Всего голосов 17: ↑17 и ↓0+17
Комментарии10

Мобильная разработка за неделю #516 (20 — 26 ноября)

Время на прочтение5 мин
Количество просмотров4.8K
В нашей новой подборке отслеживание изменений в SwiftUI и тысяча проблем App Clip, Kotlin под капотом и простая архитектура, OpenStreetMap в Flutter, 18 лет работы в Google, мышление Platform Engineer, приложением №1 в App Store, которое не обновлялись уже 7 лет и многое другое!

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

Читать дальше →
Всего голосов 3: ↑3 и ↓0+3
Комментарии1

Истории

Простая архитектура с использованием MVVM и делегатов в Android. Оптимальное решение для малых проектов

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

В этой статье мы рассмотрим, как создать простую архитектуру Android, используя паттерн MVVM (Model-View-ViewModel) и делегаты для эффективного управления состоянием.

Читать далее
Всего голосов 8: ↑6 и ↓2+4
Комментарии0

Kotlin под капотом: нюансы использования аннотаций

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

Котлин очень лаконичный язык, но когда его код компилируется в Java bytecode, то изящные  конструкции kotlin распадаются на развесистые и монструозные конструкции Java. При этом применение аннотаций может сыграть с вами злую шутку.  

Читать далее
Всего голосов 29: ↑29 и ↓0+29
Комментарии4

Пишем Kotlin DSL для графов навигации в домашних условиях

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

Всем привет! Я Тимур, лид одной из android-команд. Больше трех лет работаю в Тинькофф, все это время был в привлечении и занимался флоу получения разных банковских продуктов.

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

Читать далее
Всего голосов 18: ↑18 и ↓0+18
Комментарии9

Дайджест мобильной разработки за октябрь

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

HyperOS от Xiaomi, обновление Android Jetpack, новые возможности для разработчиков от Discord, предварительная проверка приложений от Google, функция Drag & Drop в RuStore и другие новости рынка мобильной разработки в октябре 2023 года.

Читать далее
Всего голосов 15: ↑13 и ↓2+11
Комментарии5

Статический анализатор Ktlint для Kotlin в Android

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

Kotlin — это статически типизированный язык программирования на основе JVM, разработанный компанией JetBrains. Он был представлен Google в первую очередь для создания мобильных приложений на платформе Android. Используя Kotlin, разработчики могут писать код быстрее и более качественно. Тем не менее, как и в случае с любым другим языком программирования, важно соблюдать набор правил, чтобы обеспечить высокую производительность и читаемость кода.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии0

Большая дыра в безопасности Android: почему смартфоны с зеленым роботом подвержены кражам?

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

Многим пользователям смартфонов знакомо такие понятия как «привязка к аккаунту». У различных вендоров смартфонах есть свои механизмы защиты смартфонов от кражи: у Apple — FMI, у Xiaomi — Mi Cloud, а у Google — FRP. Однако у Android есть давняя уязвимость, которая позволяет обходить практически любые смартфоны на «чистой» системе, даже с привязкой к Google-аккаунту. Недавно мне написал известный YouTube-блогер MaddyMurk и предложил задарить смартфон-броневичок AGM H3 на гугл-аккаунте, который он не смог сбросить. Я решил подготовить подробный материал о дырах в защите Android и на практике обойти FRP на смартфоне, который «повис» на активации. Сегодня мы с вами узнаем: почему смартфоны на Android так легко обходить, какие существуют методики и почему подобная практика невозможна на устройствах Apple. Интересно? Жду вас под катом!
Читать дальше →
Всего голосов 89: ↑83 и ↓6+77
Комментарии74

Мобильная разработка за неделю #515 (13 — 19 ноября)

Время на прочтение5 мин
Количество просмотров2K
В этом дайджесте для мобильных разработчиков листаем страницы и повышаем качество кода, защищаем и исследуем код, исследуем новый релиз Flutter, делаем дизайн-систему, автотесты, определяем “производительность” рекламных сетей.

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

Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Погружение в Smali. Как выглядят Java и Kotlin со стороны

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

Эта статья для начинающих исследователей файлов APK. Хотя почему только для начинающих? Иногда стоит остановиться и разложить по полочкам то, что накопилось. И тогда можно найти логичное и простое объяснение тому, чего не понимал. Или увидеть то, чего раньше не замечал.

Читать далее
Всего голосов 11: ↑8 и ↓3+5
Комментарии2

Как сделать автотесты гибкими и лаконичными

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

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



Меня зовут Арсений Федоров, я — разработчик автоматизированных тестов в команде Kaspersky Internet Security for Android. В этой статье покажу, как можно избежать всех вышеперечисленных проблем, выбрав другой подход к разработке автотестов, а также разберу несколько хороших практик.

Читать дальше →
Всего голосов 13: ↑13 и ↓0+13
Комментарии0

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

Защита кода приложения Android. Когда хотели как лучше, а вышло не очень

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

В статье расскажу пару случаев из практики анализа защиты приложений Android. Имена и место событий изменены. Любые совпадения — случайность

Читать далее
Всего голосов 28: ↑25 и ↓3+22
Комментарии7

Сквозь дебри разработки, или как я пытался написать приложение

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

Хотелось бы начать эту статью хоть с какого-то приветствия, но так как мы собрались тут ради хоть как-то полезной информации, перейду сразу к делу. Итак, немного вводных и постановка проблемы: любому начинающему разработчику нужен опыт. А как наработать опыт? Именно опыт, а не просто определённый объём зазубренной теории с полным нулём практики. Есесна написать что-то своё – проект, который не стыдно и в портфолио положить, да и просто перед знакомыми похвастаться.

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

Читать далее
Всего голосов 4: ↑4 и ↓0+4
Комментарии15

Разрушители легенд: Как на самом деле магазины проверяют приложения на уязвимости

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

Всем привет! Снова с вами Юрий Шабалин. Уже много лет я занимаюсь безопасностью мобильных приложений и в своих исследованиях доношу важность этого направления для бизнеса.

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

Давайте посмотрим!

Читать далее
Всего голосов 19: ↑18 и ↓1+17
Комментарии15

Разделение презентационного слоя фичи на модули в Android приложении

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

Привет, Хабр! Я, Алексей, ведущий разработчик в платформенной команде Альфа-Бизнес Мобайл. В этой статье речь пойдет про приложение Альфа-Бизнес и об одной из архитектурных проблем, с которой сталкиваются на любом среднем/крупном проекте, рассмотрим несколько способов, которыми можно такие проблемы решать, и расскажу почему мы выбрали именно шарить презентационный слой.

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии5

Как подружить JUnit 5 и Robolectric?

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

Задавались ли вы вопросом, почему Robolectric не работает JUnit 5? В этой статье расскажу, как подружить Robolectric и JUnit 5 и как мы смогли это сделать в команде. 

Вы узнаете, как запустить JUnit 4 тесты при совместном использовании с JUnit Jupiter с помощью тестового движка Vintage. А ещё — как с JUnit Platform разработчики Kotest и Spock Framework создавали свои тестовые фреймворки.

Чтобы разобраться с этими вопросами, проясним мотивы разработчиков, которые создавали JUnit 5, и сравним архитектуру JUnit 4 и JUnit 5, ограничения и возможности этих библиотек.

Читать далее
Всего голосов 9: ↑9 и ↓0+9
Комментарии0

Как моя 9-месячная дочь заработала больше 1000 долларов в программе bug bounty

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

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

Читать далее
Всего голосов 150: ↑146 и ↓4+142
Комментарии76

Приложение для мобильных бригад: «толстый клиент» и полмиллиона строк кода

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

Привет, меня зовут Александр, я начальник отдела мобильной разработки в СИГМЕ. Хочу рассказать, как мы делали приложение для мобильных бригад. Тех самых ребят, которые выезжают на место аварий на объектах энергетики и делают так, чтобы свет и энергия в наших домах не отключались.

Читать далее
Всего голосов 8: ↑6 и ↓2+4
Комментарии15