ANR internals: touch dispatching through the view hierarchy
Статья с разбором откуда возникает ANR диалог и как он определяется системой
#androidos
Статья с разбором откуда возникает ANR диалог и как он определяется системой
#androidos
👎19👍10
Android System Intelligence (ASI) - система Android, обеспечивающая различными умными функциями Android смартфон: Live Captions, Smart notification responses, Now Playing и др. Все они собраны в одной статье
#androidos
#androidos
👍15👎6
Статья (6 мин, EN, ссылка без VPN) про то как приложения работают с памятью (не про диск, а оперативную)
#androidos
#androidos
👍42👎7
Теперь API Level будет не целым числом, а состоять из мажорной и минорной цифры
👉 Единственный релиз с изменением поведения, который может затронуть приложения
👉 Предоставят новые API для разработчиков
👉 Будет увеличивать уровень API
👉 Новые API для разработчиков
👉 Обновления фичей, оптимизации и исправления багов со второго квартала
👉 Повышает минорное значение в пределах уровня API
#androidos
Please open Telegram to view this post
VIEW IN TELEGRAM
👍40 9
Всё это Google смог сделать благодаря 3 вещам
🤖 Project Treble - разделение слоёв фреймворка, драйверов и надстроек вендора
🤖 Project Mainline - отделение функций ОС на модули и обновление их независимо от прошивки через Google Play Services
🤖 Google Play Services - тотальный контроль над устройствами с Google Play
#androidos
#androidos
Please open Telegram to view this post
VIEW IN TELEGRAM
Автор библиотеки-обертки над Android PackageInstaller API делиться с какими багами Android пришлось столкнуться и как их решал:
👉 Странности поведения при выдаче разрешения на установку
👉 Только BroadcastReceiver не позволяет полностью отследить весь статус процесса установки приложения
Подробности в статье(EN,10м)
#androidos
👉 Странности поведения при выдаче разрешения на установку
👉 Только BroadcastReceiver не позволяет полностью отследить весь статус процесса установки приложения
Подробности в статье(EN,10м)
#androidos
👍17❤3
До Android 10 фреймворк ОС был монолитным и любое изменение приводили к необходимости раздачи новой версии вендором.
Google выделила во фреймворке (и продолжает делать) компоненты и теперь может обновлять их независимо. Делать это может вендор или приложение с высокими системными правами, например Google Play Services.
Благодаря изменению, теперь не нужно ждать новой версии прошивки от вендора, а вы получите новую версию компонентов и даже портирование новых API из более поздних версий ОС. Так например было с Photo Picker, который появился в Android 14, но его перенесли и на Android 12+, благодаря тому что был сделан модуль медиа, частью которого и есть Photo Picker.
Более подробно читайте в документации
#androidos #android
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47🔥5❤4
Media is too big
VIEW IN TELEGRAM
📺 Accelerating Android Releases: An Unofficial Guide to Trunk Stable
Хотите быть в курсе последних возможностей Android и внедрять их в свои проекты? В этом видео бывший сотрудник Google и член команды Android расскажет о Trunk Stable – новой квартальной модели релизов Android.
Разберём:
👉 зачем потребовались изменения, чтобы повысить качество и ускорить релизы;
👉 как это связано с новыми регуляторными требованиями;
👉 что такое next, trunk_food и trunk_staging;
👉 как определять фичи, проводить A/B-тесты и работать с фиче-флагами через aconfig;
👉 Как ребейзить изменения и синхронизировать проекты с последними обновлениями Android.
#android #androidos
Хотите быть в курсе последних возможностей Android и внедрять их в свои проекты? В этом видео бывший сотрудник Google и член команды Android расскажет о Trunk Stable – новой квартальной модели релизов Android.
Разберём:
👉 зачем потребовались изменения, чтобы повысить качество и ускорить релизы;
👉 как это связано с новыми регуляторными требованиями;
👉 что такое next, trunk_food и trunk_staging;
👉 как определять фичи, проводить A/B-тесты и работать с фиче-флагами через aconfig;
👉 Как ребейзить изменения и синхронизировать проекты с последними обновлениями Android.
#android #androidos
❤6👍4
Media is too big
VIEW IN TELEGRAM
Google на протяжении 10 лет меняла Android под капотом, пока все думали что происходит стагнация. По итогу - быстрые релизы, независимость от вендоров, прямые обновления устройства пользотвателей и всё это благодаря современной архитектуре мобильной ОС.
Как они этого добились - в новом видео на канале.
#AndroidBroadcast #androidos
Please open Telegram to view this post
VIEW IN TELEGRAM
❤31👍14🔥5🤯3
Чтобы получить доступ к пользовательским данным или сенсорам, разработчику приходится работать с механизмом разрешений (permissions): пользователь должен выдать приложению право на использование соответствующего ресурса. Однако наличие
Permission не гарантирует, что приложение действительно сможет получить эти данные.Например, приложению выдали доступ к геолокации, и формально оно имеет право узнать, где находится пользователь. Но при запросе локации приложение получает null. Почему?
Здесь и появляется понятие
Ability — фактическая возможность получить данные в текущий момент времени. И она может отсутствовать даже при наличии разрешения.Причин может быть множество:
👉 пользователь отключил геолокацию через быстрые настройки;
👉 система временно приостановила доступ (например, в режиме энергосбережения);
👉 прошивка вендора ограничила работу сенсора;
👉 администратор устройства запретил доступ к геолокации;
👉 отсутствует физический сигнал (GPS недоступен, нет сети и т.д.).
Итог:
Permission — это юридическое право, Ability — это реальная техническая возможность.С точки зрения архитектуры, наличие permission не должно рассматриваться как гарантия наличия данных. Бизнес-логика и use case’ы должны быть спроектированы так, чтобы корректно работать в ситуации отсутствия ability.
Другими словами: приложение должно быть готово к тому, что внешний мир в любой момент может стать недоступным — даже если формально все разрешения выданы. Это означает:
Permission — это контракт с пользователем. Ability — это контракт с реальностью. И именно второй чаще всего нарушается.#AndroidDev #AndroidOS #Архитектура
Please open Telegram to view this post
VIEW IN TELEGRAM
👍88❤11👎8🤔3🔥2
Media is too big
VIEW IN TELEGRAM
Система разрешений в Android - супер нетривиальная задача. А если я вам скажу, что это не баг, а фича? Да, авторы Android сделали ее именно такой, чтобы защитить пользователя от сторонних приложений. Разработчикам приходится сражаться!
В новом разборе вы НЕ узнаете как получить разрешение, но погрузитесь в то как получается разрешение, какие сервисы ОС участвуют в этом, а также как правильно на самом старте проектировать фичи с учетом разного состояния разрешений.
Видео доступно всем подписчикам на Boosty, а полный список на витрине
#AndroidBroadcast #Android #AndroidOS
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31👎10🔥6❤3