Media is too big
VIEW IN TELEGRAM
Когда: четверг, 30 июля, 19:00 (GMT+3)
В прямом эфире устрою прожарку нового примера от Google с демонстрацией как встраивать AI в классические Android приложения.
Буду ревьювить код, отвечать на ваши вопросы и классно проведем время.
Смотреть можно на
#AndroidBroacast #AndroidDev #AI #CodeReview
Please open Telegram to view this post
VIEW IN TELEGRAM
Интересная функция Bug Report: одной кнопкой собирается ZIP-архив с интерактивным HTML-дашбордом, скриншотом, логами, сетевой историей и списком падений. Для QA есть
OverlayMode.BugReporterOnly (только FAB для репортов, метрики не мешают тестированию) и Hidden, когда панель вызывается из собственного меню отладки через DebugOverlay.openPanel(context). Это решает вечную проблему «воспроизвёл, но к тикету приложить нечего».Автор не позиционирует это как замену профайлеру. Для internal- и debug-сборок мне такой формат нравится больше, чем поднимать Profiler на каждый чих.
#Android #AndroidDev #Tooling #OpenSource
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Compose Broadcast
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯 В США впервые судят человека за то, что его телефон стёр сам себя. Помогла GrapheneOS
24 января 2025, аэропорт Атланты. Гражданин США Сэмюэл Таник возвращается из-за границы и попадает на вторичный досмотр. Формально ему говорят, что ищут запрещённый контент. Защита утверждает, что интересовала его связь с движением Defend the Atlanta Forest, которое выступает против стройки полицейского учебного центра, известного как Cop City. Ордера нет: агенты объясняют, что границу он ещё не пересёк, а значит и ордер не нужен. По ходатайству защиты, к адвокату его не пустили и права не зачитали.
Таник называет пароль. Агент вводит его сам, экран гаснет, мигает несколько раз, телефон уходит в перезагрузку и оживает пустым. Это был duress-пароль — вторая комбинация в GrapheneOS, которая вместо разблокировки уничтожает ключи шифрования. Необратимо, за секунды, аппарат становится как с завода. Фича появилась в 2024 ровно под такой сценарий. Пустой телефон изъяли всё равно, а Таника пропустили в страну.
Обвинение прилетело позже:
Юридически всё держится на одном слове — «осознанно» 💥 Сам он ничего не нажимал, код ввели агенты. Вопрос суда: считать ли «назвал пароль, зная, что будет» уничтожением данных. Если докажут умысел, статья ложится.
Что здесь по-настоящему неприятно. Фича отработала идеально и именно поэтому стала уликой. Годами мы строили инструменты, которые защищают данные от взлома, а риск переехал в другое место: не в то, что защиту сломают, а в то, что за факт её использования тебе выпишут статью. Модель угроз в документации заканчивается там, где начинается протокол задержания.
Честная оговорка: что было на том телефоне, мы не знаем. Не исключено, что он вполне сознательно выбрал меньшее зло и § 2232 дешевле того, что нашли бы внутри. На инженерный вывод это не влияет.
📹 Смотрите мой обзор на GrapheneOS
🔗 Источник новости
#Android #GrapheneOS #Безопасность
24 января 2025, аэропорт Атланты. Гражданин США Сэмюэл Таник возвращается из-за границы и попадает на вторичный досмотр. Формально ему говорят, что ищут запрещённый контент. Защита утверждает, что интересовала его связь с движением Defend the Atlanta Forest, которое выступает против стройки полицейского учебного центра, известного как Cop City. Ордера нет: агенты объясняют, что границу он ещё не пересёк, а значит и ордер не нужен. По ходатайству защиты, к адвокату его не пустили и права не зачитали.
Таник называет пароль. Агент вводит его сам, экран гаснет, мигает несколько раз, телефон уходит в перезагрузку и оживает пустым. Это был duress-пароль — вторая комбинация в GrapheneOS, которая вместо разблокировки уничтожает ключи шифрования. Необратимо, за секунды, аппарат становится как с завода. Фича появилась в 2024 ровно под такой сценарий. Пустой телефон изъяли всё равно, а Таника пропустили в страну.
Обвинение прилетело позже:
18 U.S.C. § 2232 — осознанное уничтожение имущества, чтобы помешать его изъятию. Статья редкая, защитники и безопасники говорят, что в таком виде видят её впервые. Вину Таник не признал, решение по ходатайству ждут до конца года.Юридически всё держится на одном слове — «осознанно» 💥 Сам он ничего не нажимал, код ввели агенты. Вопрос суда: считать ли «назвал пароль, зная, что будет» уничтожением данных. Если докажут умысел, статья ложится.
Что здесь по-настоящему неприятно. Фича отработала идеально и именно поэтому стала уликой. Годами мы строили инструменты, которые защищают данные от взлома, а риск переехал в другое место: не в то, что защиту сломают, а в то, что за факт её использования тебе выпишут статью. Модель угроз в документации заканчивается там, где начинается протокол задержания.
Честная оговорка: что было на том телефоне, мы не знаем. Не исключено, что он вполне сознательно выбрал меньшее зло и § 2232 дешевле того, что нашли бы внутри. На инженерный вывод это не влияет.
🔗 Источник новости
#Android #GrapheneOS #Безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM
🔐 GrapheneOS ответила на дело о стёртом телефоне и между строк призналась, что стирать было не обязательно
Продолжение вчерашней истории про активиста, чей Pixel обнулился прямо в руках офицера.
Публичная часть ответа предсказуемая. Команда заявила, что ОС полностью легальна, ослаблять свои механизмы защиты они не обязаны, а законы, которые потребовали бы это сделать, были бы неконституционными. Отдельно уточнили, что помочь американским силовикам восстановить данные с того телефона не могут физически: железо и софт спроектированы так, чтобы обойти шифрование было нельзя.
Интереснее то, что параллельно опубликовал GrapheneOS Foundation. Фонд выкатил разбор своих защит от извлечения данных из заблокированных устройств и довольно прозрачно намекает: телефон на GrapheneOS переживает досмотр и без duress-пароля. А следом идёт прямая оговорка, что стирание данных в некоторых случаях может повлечь юридические последствия 💥 То есть ровно тезис вчерашнего поста, только теперь его пишут сами авторы фичи.
Что предлагается вместо? Ключевая штука это авто-ребут: таймер стартует при блокировке и перезагружает аппарат, если до нуля его так и не разблокировали. По умолчанию 18 часов, настраивается в диапазоне от 10 минут до 72 часов, разблокировка любого профиля таймер сбрасывает. Реализован в
Вывод для инженера скучный и рабочий: лучшая защита на границе не та, что эффектно уничтожает данные, а та, что спрячет их и не даёт повода для уголовной статьи 🎯
#Android #GrapheneOS #Pixel #Security
Продолжение вчерашней истории про активиста, чей Pixel обнулился прямо в руках офицера.
Публичная часть ответа предсказуемая. Команда заявила, что ОС полностью легальна, ослаблять свои механизмы защиты они не обязаны, а законы, которые потребовали бы это сделать, были бы неконституционными. Отдельно уточнили, что помочь американским силовикам восстановить данные с того телефона не могут физически: железо и софт спроектированы так, чтобы обойти шифрование было нельзя.
Интереснее то, что параллельно опубликовал GrapheneOS Foundation. Фонд выкатил разбор своих защит от извлечения данных из заблокированных устройств и довольно прозрачно намекает: телефон на GrapheneOS переживает досмотр и без duress-пароля. А следом идёт прямая оговорка, что стирание данных в некоторых случаях может повлечь юридические последствия 💥 То есть ровно тезис вчерашнего поста, только теперь его пишут сами авторы фичи.
Что предлагается вместо? Ключевая штука это авто-ребут: таймер стартует при блокировке и перезагружает аппарат, если до нуля его так и не разблокировали. По умолчанию 18 часов, настраивается в диапазоне от 10 минут до 72 часов, разблокировка любого профиля таймер сбрасывает. Реализован в
init, так что уронить system_server и сорвать перезагрузку не выйдет. Цель в том, чтобы вернуть телефон в состояние Before First Unlock, где ключей в памяти нет и коммерческие форензик-комбайны резко теряют в эффективности. Ничего не уничтожено, вменять нечего, данные просто лежат зашифрованными.С 2025 Google завезла авто-рестарт через Play services. Только фиксированные 72 часа и без единой настройки.
Вывод для инженера скучный и рабочий: лучшая защита на границе не та, что эффектно уничтожает данные, а та, что спрячет их и не даёт повода для уголовной статьи 🎯
#Android #GrapheneOS #Pixel #Security
#Android #AndroidDev
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Mobius — канал конференции
#видеозаписи #МобильныйВторник
Совсем скоро мы расскажем про первые доклады Mobius 2026 Autumn
А пока начинаем открывать видеозаписи некоторых докладов весны. Начинаем с того, что в этом году пришлось пройти почти каждому разработчику — внедрения ИИ в рабочие процессы.
Кирилл Розов — 7 стадий AI в разработке: от скептика к архитектору
😉 YouTube | 📺 VK Видео
Скачать презентацию с сайта Mobius
Совсем скоро мы расскажем про первые доклады Mobius 2026 Autumn
А пока начинаем открывать видеозаписи некоторых докладов весны. Начинаем с того, что в этом году пришлось пройти почти каждому разработчику — внедрения ИИ в рабочие процессы.
Кирилл Розов — 7 стадий AI в разработке: от скептика к архитектору
Скачать презентацию с сайта Mobius
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
Кирилл Розов — 7 стадий AI в разработке: от скептика к архитектору
Подробнее о конференции Mobius: https://jrg.su/ojGU3B
— —
Скачать презентацию с сайта — https://jrg.su/tzEdXT
В 2025–2026 годах мобильная разработка переживает парадигмальный сдвиг: генеративный AI перестал быть игрушкой и стал обязательной частью рабочего…
— —
Скачать презентацию с сайта — https://jrg.su/tzEdXT
В 2025–2026 годах мобильная разработка переживает парадигмальный сдвиг: генеративный AI перестал быть игрушкой и стал обязательной частью рабочего…
Как вы нашли работу в IT в 2026?
Anonymous Poll
6%
Ищу первую, не могу найти
24%
Пока неактуально
5%
Нашлась через рефералку
8%
Нашлась через сайты с работой
6%
Рекрутер нашел меня
14%
Ищу новую (не первую работу), пока не могу найти
1%
Для меня неактуальна работа в IT
1%
Другой вариант (пиши в комментариях)
36%
Не участвую в опросе
This media is not supported in your browser
VIEW IN TELEGRAM
Isolated Project - большой шаг в том чтобы повысить параллельность сборки, лучшую работу с конфиг кэшем и ускорение сборки проекта!
Фича выключена по умолчанию, для включения надо добавить флаг:
# Файл gradle.properties в корне проекта
org.gradle.isolated-projects=true
⚠️ Ваш сборка и плагины, подключенные в проект, должны поддерживать Isolated Project
🔗 Подробнее про Isolated Project
#Gradle
Please open Telegram to view this post
VIEW IN TELEGRAM
От табуретки до кибер-трона: -25% на мечты 🚀
Помните, как в школе мы сидели за деревянными партами и стульями? Теперь, когда технологии везде — пора окружать себя комфортом, который не даёт спине скучать по школьному «удобству».
🎓 Эргостол запускает акцию «Эргономика новых знаний».
С 10.08 по 23.08 можно урвать скидки до -25%.
🔥 скидки суммируются с промокодом -10%
У вас — работа, у ребенка — учеба. А место для этого может быть общим! Благодаря регулировке высоты, один стол легко превращается из взрослого рабочего в детский письменный за считанные секунды. Кресло тоже можно рассмотреть. Экономия места и бюджета.
🤩 Не забудь, промокод -10%
Помните, как в школе мы сидели за деревянными партами и стульями? Теперь, когда технологии везде — пора окружать себя комфортом, который не даёт спине скучать по школьному «удобству».
🎓 Эргостол запускает акцию «Эргономика новых знаний».
С 10.08 по 23.08 можно урвать скидки до -25%.
ANDROID10 У вас — работа, у ребенка — учеба. А место для этого может быть общим! Благодаря регулировке высоты, один стол легко превращается из взрослого рабочего в детский письменный за считанные секунды. Кресло тоже можно рассмотреть. Экономия места и бюджета.
ANDROID10 действует и на OzonPlease open Telegram to view this post
VIEW IN TELEGRAM
В Gradle 9.7.0 официально вывели
Суть простая и одновременно радикальная. Раньше конфигурация проектов в Gradle шла последовательно: один модуль за другим, и каждый мог свободно лезть в состояние соседей. В больших сборках (тысячи модулей) это превращалось в минуты ожидания просто на этапе конфигурации — и при синхронизации Android Studio, и при обычном
Цифры из блога Gradle довольно красноречивые. На собственном 300-модульном билде Gradle медианный IDE-sync ускорился с 84 до 47 секунд. На Android-монорепе больше чем с 5000 проектов синхронизация Android Studio упала с 5 минут 9 секунд до 2 минут 44 секунд (почти в два раза). Репозиторий AndroidX тоже показал ощутимый выигрыш. Причём это только начало: изоляция открывает дорогу к выборочной конфигурации (конфигурировать только те проекты, которые реально нужны для текущей задачи) и к более тонкому кэшированию результатов конфигурации.
Интересно, что такой подход уже давно является нормой в других системах сборки. Bazel и Buck изначально проектировались вокруг изоляции: пакеты/таргеты максимально независимы, конфигурация декларативная, параллелизм — естественное следствие. Gradle исторически шёл другим путём — максимальная гибкость и возможность писать почти любой императивный код в build-скриптах, что в итоге сыграло против него.
Адаптация проекта для Isolated Project
Чтобы адаптировать свой проект сначала нужно, чтобы сборка уже нормально работала с
После включения Gradle начнёт падать на любом нарушении изоляции (если не станет - вы мастер конфигурации). Чаще всего это:
- доступ к изменяемому состоянию другого проекта (
- использование
- плагины, которые регистрируют задачи или расширения «через границу» проекта.
Исправляется это в основном переносом общей логики в convention плагины, использованием
Команда Gradle плотно работала с Google и JetBrains, поэтому Android Gradle Plugin и Kotlin Gradle Plugin уже поддерживают изоляцию (на свежих версиях). KSP тоже умеет — нужно только включить
С комьюнити-плагинами ситуация разношёрстная. Многие уже адаптированы (Apollo, Wire, Firebase Crashlytics/Perf, Dependency Analysis и другие). Некоторые всё ещё ломаются или требуют костылей: Spotless часто приходится условно отключать, Gradle Doctor, SKIE и часть Kotlin Multiplatform (особенно WASM/JS) пока в красной зоне. Если ваш плагин падает, то лучшее, что можно сделать, это создать issues или найти уже открытое. Актуальный статус поддержки Isolated Project в Gradle плагинами есть на сайте (спасибо Никите К. за ссылку)?
Станет ли это обязательным? В ближайшее время нет. Фича incubating, по умолчанию выключена и официально не рекомендуется для продакшен-артефактов. Gradle явно говорит, что собирается стабилизировать Isolated Projects и в конечном итоге сделать их режимом по умолчанию, но конкретных сроков нет. На мой взгляд, раньше выхода Gradle 11 это не состоится, потому что очень много правок надо сделать по всей экосистеме Gradle. Пока это инструмент для тех, кто готов инвестировать время в миграцию ради заметно более быстрой синхронизации и конфигурации.
Если у вас большой Android-проект и синхронизация уже начала раздражать — имеет смысл попробовать. Даже если прямо сейчас не всё идеально, направление понятно: Gradle медленно, но верно уходит от «всё можно менять отовсюду» к модели, в которой проекты действительно изолированы. А это именно то, что нужно монорепам и большим мультимодульным сборкам.
#Gradle
Isolated Projects из экспериментального статуса в incubating. Для Android-разработчиков, особенно тех, кто живёт в больших мультимодульных проектах или монорепах, это одна из самых заметных новостей последних релизов.Суть простая и одновременно радикальная. Раньше конфигурация проектов в Gradle шла последовательно: один модуль за другим, и каждый мог свободно лезть в состояние соседей. В больших сборках (тысячи модулей) это превращалось в минуты ожидания просто на этапе конфигурации — и при синхронизации Android Studio, и при обычном
./gradlew. Isolated Projects вводит жёсткие границы: во время конфигурации проект больше не может трогать изменяемое состояние другого проекта, например добавить зависимость или сделать конфигурацию плагина. Благодаря этому Gradle наконец-то может конфигурировать модули параллельно, используя все доступные ресурсы компьютера.Цифры из блога Gradle довольно красноречивые. На собственном 300-модульном билде Gradle медианный IDE-sync ускорился с 84 до 47 секунд. На Android-монорепе больше чем с 5000 проектов синхронизация Android Studio упала с 5 минут 9 секунд до 2 минут 44 секунд (почти в два раза). Репозиторий AndroidX тоже показал ощутимый выигрыш. Причём это только начало: изоляция открывает дорогу к выборочной конфигурации (конфигурировать только те проекты, которые реально нужны для текущей задачи) и к более тонкому кэшированию результатов конфигурации.
Интересно, что такой подход уже давно является нормой в других системах сборки. Bazel и Buck изначально проектировались вокруг изоляции: пакеты/таргеты максимально независимы, конфигурация декларативная, параллелизм — естественное следствие. Gradle исторически шёл другим путём — максимальная гибкость и возможность писать почти любой императивный код в build-скриптах, что в итоге сыграло против него.
Isolated Projects — это попытка взять лучшее из обоих миров: сохранить привычную модель Gradle, но добавить те самые границы, которые позволяют масштабироваться.Адаптация проекта для Isolated Project
Чтобы адаптировать свой проект сначала нужно, чтобы сборка уже нормально работала с
Configuration Cache, Isolated Projects строится поверх него строится. Дальше в gradle.properties добавляете:org.gradle.isolated-projects=true
После включения Gradle начнёт падать на любом нарушении изоляции (если не станет - вы мастер конфигурации). Чаще всего это:
- доступ к изменяемому состоянию другого проекта (
rootProject.version, project(":other").tasks и т.п.);- использование
allprojects / subprojects с мутациями;- плагины, которые регистрируют задачи или расширения «через границу» проекта.
Исправляется это в основном переносом общей логики в convention плагины, использованием
project.isolated для безопасного чтения данных и lifecycle-колбэками из settings. Есть diagnostics-режим, который помогает найти все нарушения, и даже «dangerously ignore problems», если хочется сначала просто замерить прирост производительности.Команда Gradle плотно работала с Google и JetBrains, поэтому Android Gradle Plugin и Kotlin Gradle Plugin уже поддерживают изоляцию (на свежих версиях). KSP тоже умеет — нужно только включить
ksp.project.isolation.enabled=true. Официальный пример Now in Android уже приведён в совместимое состояние.С комьюнити-плагинами ситуация разношёрстная. Многие уже адаптированы (Apollo, Wire, Firebase Crashlytics/Perf, Dependency Analysis и другие). Некоторые всё ещё ломаются или требуют костылей: Spotless часто приходится условно отключать, Gradle Doctor, SKIE и часть Kotlin Multiplatform (особенно WASM/JS) пока в красной зоне. Если ваш плагин падает, то лучшее, что можно сделать, это создать issues или найти уже открытое. Актуальный статус поддержки Isolated Project в Gradle плагинами есть на сайте (спасибо Никите К. за ссылку)?
Станет ли это обязательным? В ближайшее время нет. Фича incubating, по умолчанию выключена и официально не рекомендуется для продакшен-артефактов. Gradle явно говорит, что собирается стабилизировать Isolated Projects и в конечном итоге сделать их режимом по умолчанию, но конкретных сроков нет. На мой взгляд, раньше выхода Gradle 11 это не состоится, потому что очень много правок надо сделать по всей экосистеме Gradle. Пока это инструмент для тех, кто готов инвестировать время в миграцию ради заметно более быстрой синхронизации и конфигурации.
Если у вас большой Android-проект и синхронизация уже начала раздражать — имеет смысл попробовать. Даже если прямо сейчас не всё идеально, направление понятно: Gradle медленно, но верно уходит от «всё можно менять отовсюду» к модели, в которой проекты действительно изолированы. А это именно то, что нужно монорепам и большим мультимодульным сборкам.
#Gradle
#GooglePlay
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Кирилл Розов
Почему кастомные уведомления в Android — это одно из худших решений Google
Каждый раз, когда вижу в шторке уведомление с собственным UI через RemoteView, у меня дергается глаз. Это не просто вопрос эстетики, это техническая проблема.
Главная беда в том, что инструментов для адаптации кастомной верстки под все версии Android и оболочки (MIUI, OneUI, ColorOS и т.д.) практически не существует. То текст налезет на иконку, то кнопки съедут, то фон не тот. В итоге страдает пользователь, который думает, что «Android — это криво», хотя виноват конкретный разраб, решивший поиграть в дизайнера.
Я считаю, что Google должен ужесточить политику: разрешить встраивание только через заранее определенные шаблоны (BigPicture, Messaging, Progress). Если приложение подает кастомный View — система должна отклонить такое уведомление.
Знаю, что это ударит по небольшому числу приложений, но недавний пример с Я Go вселяет надежду. На Android 17 они перешли на Ongoing Notification со стандартным стилем, и жить стало лучше.
Я за то, чтобы в Android 18 эту возможность просто отрубили на уровне системы. Меньше свободы — больше стабильности и удобства!
💬 Что вас раздражает в Android как пользователя?
Каждый раз, когда вижу в шторке уведомление с собственным UI через RemoteView, у меня дергается глаз. Это не просто вопрос эстетики, это техническая проблема.
Главная беда в том, что инструментов для адаптации кастомной верстки под все версии Android и оболочки (MIUI, OneUI, ColorOS и т.д.) практически не существует. То текст налезет на иконку, то кнопки съедут, то фон не тот. В итоге страдает пользователь, который думает, что «Android — это криво», хотя виноват конкретный разраб, решивший поиграть в дизайнера.
Я считаю, что Google должен ужесточить политику: разрешить встраивание только через заранее определенные шаблоны (BigPicture, Messaging, Progress). Если приложение подает кастомный View — система должна отклонить такое уведомление.
Знаю, что это ударит по небольшому числу приложений, но недавний пример с Я Go вселяет надежду. На Android 17 они перешли на Ongoing Notification со стандартным стилем, и жить стало лучше.
Я за то, чтобы в Android 18 эту возможность просто отрубили на уровне системы. Меньше свободы — больше стабильности и удобства!
Please open Telegram to view this post
VIEW IN TELEGRAM
Причина на поверхности — стоимость отправки классических SMS для бизнеса выросла настолько, что мобильная связь как канал верификации уходит на второй план. Практически любой крупный ритейлер, банк или сервис сегодня используют каскадную доставку: код сначала летит вам пушом (потому что бесплатный), потом в Telegram, WhatsApp, Viber, и только в крайнем случае — в старую добрую сим-карту. Бизнес банально экономит бюджеты.
И на этом фоне анонсы Android 17 выглядят как привет из прошлого века. Google тратит колоссальные ресурсы на то, чтобы заделать дыры в безопасности SMS, полностью игнорируя тот факт, что коммуникация людей и брендов давно переместилась в мессенджеры.
В новой версии ОС вводится жесткая трехчасовая задержка на доступ к входящим SMS с OTP-кодами для обычных приложений, чтобы защитить пользователей от троянов-перехватчиков. Разработчикам безальтернативно говорят: используйте нативный SMS Retriever API, который автоматически парсит сообщения по специальной хэш-подписи. Но это лечит симптомы старой болезни. Даже с SMS этот API внедрили далеко не все, потому что поддерживать уникальные хэши под разные сборки на бэкенде — та еще головная боль. А для мессенджеров никакого аналога просто не существует.
В итоге мы упёрлись в глухой тупик для UX:
👉 Если код авторизации пришел в Telegram, ваше приложение не может перехватить его легально.
👉 Пытаться читать пуши сторонних приложений через
NotificationListenerService в Google Play строго запрещено — за это прилетает моментальный бан.👉 Никакого доверенного и безопасного
NotificationRetrieverAPI для мессенджеров Google не предлагает.Пользовательский опыт в Android не развивается в соотвествии с трендами. Пользователь вынужден совершать кучу лишних движений: свернуть экран, открыть мессенджер, скопировать код, вернуться и вставить его руками. Пока Apple в iOS пытается развивать автоподстановку кодов из встроенной почты и системных уведомлений, Android-разработчики остаются заложниками ситуации, где безопасность SMS доведена до стерильности, а реальные сценарии из жизни брошены на произвол судьбы. Готовимся к тому, что процесс авторизации в приложениях на Android 17 станет еще чуть более «ручным».
#Android17 #AndroidDev #UX #Безопасность
Please open Telegram to view this post
VIEW IN TELEGRAM