Несколько дней назад появилась новость о выходе новой версии мобильной операционной системы Android 14. На данный момент исходники прошивки готовы для серии смартфонов Pixel, а чуть позже выйдут обновления для Samsung Galaxy, iQOO, Nothing, OnePlus, Oppo, realme, Sharp, Sony, Tecno, vivo и Xiaomi. Кроме того, готовы и универсальные сборки для разных устройств на базе архитектур ARM64 и x86_64. Давайте внимательно посмотрим на улучшения и дополнения, которые появились в новой версии.
Что нового в мобильной ОС?
Разработчики обновили некоторые аспекты информационной безопасности ОС. В частности, добавлена возможность частичного предоставления полномочий для доступа только к выбранным пользователем фотографиям и видео (READ_MEDIA_VISUAL_USER_SELECTED). Как только приложение переходит в фоновый режим или его работа завершается — полномочия отзываются.
В приложениях, использующих обработчики, работающие в фоновом режиме, теперь обязательно указание типа фонового сервиса. Во время работы система проверяет соответствие указанного типа сервиса, запрошенных полномочий и используемого API. Например, если приложение указало тип фонового сервиса FOREGROUND_SERVICE_TYPE_LOCATION, подразумевается, что им могут быть запрошены полномочия ACCESS_COARSE_LOCATION или ACCESS_FINE_LOCATION.
Ещё одна новая возможность — запрещение отправки приложениями intent-запросов к некоторым внутренним компонентам платформы. Кроме того, в ZipFile(String) и ZipInputStream.getNextEntry() запрещена обработка zip-архивов, пути в которых начинаются с символа "/" или содержат последовательность "..". Разработчики также ограничили запуск работ из фоновых обработчиков, плюс обновлены ограничения в области вызова программных интерфейсов, которые не предоставляются в SDK.
Расширены возможности по использованию сразу нескольких рабочих профилей, причём упрощено и переключение между ними. Появилась также возможность открытия ссылок в других профилях — например, ссылку из рабочего профиля можно открыть в домашнем. Достаточно простым стал и процесс шеринга экрана.
Разработчики ограничили типы приложений, которым разрешён вывод полноэкранных уведомлений при блокировке экрана. Так, подобные уведомления рассчитаны на привлечение внимания к информации, которая крайне актуальная для пользователя. Пример — звонки или будильник. Соответственно, полномочия для вывода этих уведомлений теперь ограничиваются приложениями для осуществления звонков и вывода предупреждающих сигналов.
Сильно расширен и набор расширений для камеры. Теперь здесь появилась возможность использования более длительно выполняемых алгоритмов. Речь идёт о тех из них, где требуется выделение ресурсов устройства для обработки изображений. Это может быть повышение качества снимков, которые сделаны при низкой освещённости. Добавлены также функции для прогнозирования лагов для обработки снимков и сопутствующих процессов.
Добавлены возможности подтверждения доступа к геолокации. Так, в диалоге с запросом подтверждения доступа теперь появился новый раздел с информацией о том, когда именно приложение может получать данные о местоположении плюс подробностями, где именно можно получить дополнительные сведения об этой функции.
Ещё дополнены возможности по работе с видеоконтентом. Так, поддержка записи видео с высоким динамическим диапазоном яркости (HDR) расширена возможностями по получению с камеры дополнительной информации, дающей возможность сохранения изображений в формате Ultra HDR. Положительный момент в том, что формат Ultra HDR полностью совместим с JPEG, это даёт возможность приложениям работать с HDR-изображениями без каких-либо изменений.
Стоит также выделить оптимизацию платформы для работы на устройствах со складными экранами. В частности, созданы библиотеки, которые обеспечивают предсказание событий, которые связаны с перемещением указателя, что обеспечивает малый лаг при использовании стилуса.
Оптимизирована также система управления памятью для рационального выделения ресурсов тем приложениям, которые выполняются в фоновом режиме. Через несколько секунд после перевода приложения в прокэшированное состояние фоновая работа ограничивается взаимодействием с API для управления жизненным циклом приложения. Это, например, API Foreground Services, JobScheduler и WorkManager.
В API PackageInstaller добавлены новые методы: requestUserPreapproval(), позволяющий каталогу приложений отложить загрузку APK-пакетов до получения от пользователя подтверждения установки; setRequestUpdateOwnership(), позволяющий закрепить за установщиком будущие операции обновления приложения; setDontKillApp(), позволяющий установить дополнительные возможности для приложения во время работы с программой.
Появилась новая возможность относительно настроек языка для отдельных приложений. Так, разработчики приложений теперь могут без проблем менять localeConfig через вызов LocaleManager.setOverrideLocaleConfig для определения списка языков, показываемых для приложения в интерфейсе настройки Android.
В новой версии запрещена установка приложений с SDK ниже 23. По словам разработчиков, это даёт возможность блокировать обход ограничений полномочий посредством привязки к старым API. Правда, те приложения, что уже установлены, но используют старые API, после обновления Android всё же будут работать.
В Android Runtime (ART) реализована поддержка OpenJDK 17. Соответственно, основные Java-библиотеки платформы и средства разработки приложений обновлены до OpenJDK 17. Добавлена поддержка доступных в OpenJDK 17 языковых возможностей и Java-классов, например, классов типа record, многострочных строк и сопоставления c образцом в операторе instanceof.
Наконец, появилось больше возможностей по кастомизации интерфейса. Значительно упрощён интерфейс выбора фоновых изображений. Добавлена возможность размещения собственных ярлыков на экран блокировки. Добавлен также новый набор шаблонов оформления интерфейса блокировки экрана, с разными шрифтами, виджетами и цветами. Есть и новый генератор фоновых изображений, который применяет машинное обучение для создания изображений по текстовому описанию пользователя.
Если вы уже опробовали новую версию, расскажите в комментариях, как она вам. Есть ли проблемы, что стало лучше, а что, наоборот, ухудшилось.
Комментарии (52)
Fhann
11.10.2023 15:10+4Мда чем дальше тем хуже, есть положительные стороны, но в плане прог все становиться хуже.
CptAFK
11.10.2023 15:10+2Ну я вот не почуствовал возможность установить другой магазин приложений "по умолчанию", с предоставлением ему соответсвующих данному классу приложений прав.
Большинство новых функций это решение каких то своих внутренних проблем, прям на android 14 это не тянет, нуууу может быть 13.1, не более.
auresio
11.10.2023 15:10установить другой магазин приложений "по умолчанию"
Путать не стоит, гугл уже однажны отпустила андроид. Больше такой ошибки она не допустит.
mikegordan
11.10.2023 15:10+5В текущие время мне кажется основа над чем они должны работать это энергопотребление , интересно узнать как движется в этом направлении 14 версия .
saege5b
11.10.2023 15:10+3Если ручками отбить фоновую работу всего подряд, оставив только самое необходимое, то уже в А12 неплохо живётся, в А13 ещё лучше (на Текласт Т40, 2+ и 3+ суток соответственно).
В А14 на эту тему ещё сильней гайки закручивают, т.е. можно ожидать ещё большей жизни.
edogs
11.10.2023 15:10+1Собственно по сути из смартфона где постоянно все работало - делают компьютер, где приложения запускаются только onDemand. С точки зрения батарейки смысл в этом конечно есть, но всё равно несколько обидно - прикол смартфона был как раз в том, что все всегда работало.
saege5b
11.10.2023 15:10+7Например у меня 5 читалок. функционал использования интернета я не задействую. - Зачем им постоянно быть готовыми к работе и смотреть в инет?
Те же онлайн банки, чатилки - они висят в памяти практически в полном комплекте. Зачем эти сотни мегабайт занятой памяти, для получения входящих сообщений?
Сейчас с такими аппетитами объём памяти аппарата уже 8 Гигов минималки. И это не проблемы ОС, это кривые реализации софта. Тот же Яндекс может постоянно читать накопители, зачем-то.
Разница в запуске приложения который в активной готовности и в состоянии останова, от полусекунды до нескольких секунд. В реальной жизни это непринципиально.
ritorichesky_echpochmak
11.10.2023 15:10+7О да, тот же Яндекс тащит всё что можно, при этом приложение вызова такси перезапускается (даже при 12Гб ОЗУ на самсе) на каждый чих, особенно при переключении между приложениями или даже если телефон погасил экран при активном их же приложении и постоянно портачит с координатами. Ты его вызываешь домой (адрес сохранён в профиле!), в ту точку куда уже много раз вызывал, при включенном домашнем WiFi (ну это же тоже отслеживается!), а он предлагает тебе "уточнить координаты посадки" - какое-то издевательство. При этом там уже давно почти постоянно оверпрайс за "час пик" и дождик. По какой логике это хрючево работает - я давно не понимаю. Уже много раз видел целую ватагу такси которые просто стоят рядом на паркинге, а тебе едет 20 минут через весь город машина и "придётся ждать больше обычного, но если вы отмените - с вас ещё и сдерут денег". А если тебе нужен бустер для ребёнка - вы вообще скорее замёрзнете всей семьёй, чем дождётесь кого, даже не смотря на повышенный прайс.
У меня полыхает прям со всех их прорывных инноваций в этой части. Ничто так не мотивирует пойти сдавать на права, купить какой-нибудь корч и быть ещё одним тупнем на дороге и паркинге, чем "проф.услуги" от Яндекс Такси
nidalee
11.10.2023 15:10Яндекс — монополист в такси и доставке еды. Могут делать, что хотят. А куда вы денетесь? Мне тут недавно на доставку еды на 1000 рублей выкатили цену доставки в 700 рублей. А я еще в прошлом месяце на 500 жаловался. Ничего, привыкнем.
ritorichesky_echpochmak
11.10.2023 15:10Монополист - это когда конкуренции нет. А она есть. Да, у них меньше пиара и пафоса. Но, иногда, это и плюс
nidalee
11.10.2023 15:10+1В Москве из конкурентов Яндекс.Такси есть только Ситимобил и Максим.
Максим я заказывал 6 раз. Машина спустя 10+ минут не нашлась ни разу. У меня в приложении 6 заказов и 6 отмен. Я не знаю, зачем им приложение. Мне кажется, что это какой-то ханипот от Яндекса, чтобы над "перебежчиками" издеваться.
Ситимобил давно не пробовал, но в последний раз таксист на меня там орал, что я еду слишком дешево. А обычно (>33% заказов) они просто не приезжают — в Ситимобил у них есть такая возможность. Просто выключают интернет и все.
Что касается доставки еды, то есть пара мест, где есть своя доставка — но на ВДНХ, например, возят единицы. А после 11 вечера, вроде, вообще только одно заведение. Может два, не помню точно.ritorichesky_echpochmak
11.10.2023 15:10+1Просто выключают интернет и все
Пока я такое именно с яндекс.водителями видел. А ещё недавно видел как чел принял заказ по детскому тарифу, минут 10 постоял и поехал в обратную сторону.
Ну и, спойлер, в замкадье другие компании не такие оборзевшие
nidalee
11.10.2023 15:10Ну в Яндекс можно отменить с пометкой "ехал не в ту сторону", или не ехал вообще. Полагаю, что какие-то санкции к самым умным все же применяют.
ritorichesky_echpochmak
11.10.2023 15:10+1В Яндексе много чего можно, чего нельзя... Например могут водители уезжать приехав на место и увидев человека с ребёнком, либо переноской. Потому что оказывается умение читать детали заказа - не главное и вообще такси - это для души...
ganzmavag
11.10.2023 15:10У конкурентов порой еще хуже. И я, кажется, понимаю главную причину: средний таксист - это довольно специфический персонаж, поэтому агрегаторам приходится, мягко говоря, непросто.
Вот буквально на каждый ваш вопрос есть ответ. Местоположение - так он получает по API от смартфона, а не сам вычисляет. Ватага таксистов может просто стоять и не брать ваш заказ, как невыгодный. Бустер - проблема в том, что если цену повышать настолько, чтобы таксистам было выгодно возить детей, то это будет невыгодно для родителей. Яндекс, насколько я спрашивал у таксистов, какие-то костыли использует чтобы и цену не повышать, и заказы кто-то брал (типа если заказ с детским креслом, то пока кто-то его не возьмет, другие предлагаться не будут, какая-то такая механика), но сами понимаете, что результат с переменным успехом.
Короче я, с одной стороны, тоже на них ругаюсь, особенно когда ждешь 10 минут такси, выходишь, а оказывается - пока ты ехал в лифте, таксист увидел конечную точку и решил, что ему невыгодно с тобой ехать. С другой понимаю, что совсем запретить такое они не могут (потеряют плюс-минус адекватных, но останутся те, кто будет просто смартфон вырубать или обманывать про поломку) и балансируют на уровне "можешь какое-то количество сбросить, но потом должен себя вести хорошо, чтобы восстановить приоритет".
В общем, по мне такие технологичные агрегаторы типа Яндекса и исходного Убера наоборот чуть больше порядка навели.
Genegineer
11.10.2023 15:10а у меня (Moto G9 plus) внезапно главный тормоз это 2gis. Я поначалу думал что телефон забил приложениями (их много, да))), а когда через стандартные настройки стал останавливать неиспользуемые неделями приложения, оказалось что яндекс на быстродействие почти не влияет, а вот пока 2gis не остановишь, то даже клавиатура гугл (правда она сама распухла до скольки там, 600мб?) периодически подвисает при наборе текста в каком-нибудь телеграме или музыка в блютус-наушниках заикается.
andrey_27
11.10.2023 15:10Не знаю, как вам так везёт, у меня опыт с Яндексом всегда только положительный. Спрашивают место подачи, действительно, ты ведь GPS не включил, откуда приложению знать, где ты? Спрашивает, чтобы машина приехала куда тебе надо, а тебе не нравится, ну что за глупость?
Доплата за час пик и дождь оправдана, спрос растет, всех удовлетворить невозможно, потому цена (как и везде в экономике, между прочим), регулирует спрос, закажут только те, кому действительно надо и кто готов заплатить за такси.
Перезапускаться заставляет и сам телефон, убивая фоновые приложения. При этом приложение по факту не перезапускатся, тебя путает экран, как при запуске, хотя он просто означает загрузку, приложение должно быть уверено в том, что показать - текущая поездка может быть активна.
acsent1
11.10.2023 15:10Несколько секунд уже принципиально. Особенно когда это приложение с картой магазина и оплата по карте
selkwind
11.10.2023 15:10+4где постоянно все работало
Вам не кажется что это какой-то маразматичный подход был изначально?
edogs
11.10.2023 15:10+1Зависит от сценария использования. У нас на смарте в основном стоят приложения от которых уведомления нам нужны и учитывая то, что смарты первоначально не обладали "неограниченной" памятью, то скорее всего у многих было так.
Нет, ну допустим зачем нам постоянно запущенный зенд-студио? Не нужен, ну так мы его на смарт и не ставим. А вот банковское приложение нужно всегда под боком и что бы уведомляло если что. Поэтому оно ставится на смарт.
С навигацией-самокатами-такси - оно может сиюмитутно и не нужно, но запускаться оно должно мгновенно, поэтому опять же постоянно запущено должно быть.
По итогу если раньше мы какой-то минимум приложений иногда уводили в "оффлайн", то сейчас приходится почти все приложения наоборот - выставлять что бы они в онлайне были постоянно, да и то - сяоми, например, плюет на все эти настройки и всё равно умудряется усыплять и выгружать.
K0styan
11.10.2023 15:10Уведомления делаются через системный пуш-сервис, для этого самому приложению висеть в памяти совершенно необязательно.
northrop
11.10.2023 15:10из смартфона где постоянно все работало
Интересно ,а зачем вообще изначально был такой маразм сделан?
vikarti
11.10.2023 15:10+3Проблема в том, что отключить этот функционал для избранных программ становится все сложнее. Особенно с учетом того что производители свои извращения добавляют.
При этом вот Google Play Services порезать — а никак. Хотя часто пользователю надо чтобы в фоне работали допустим мессенджеры(приходили сообщения, пуши это не всегда ответ если при клике по пушу — начнется синхронизация) и трекер а обновление рекламы или там отсылка ну очень важной аналитики от всех подряд приложений — может и подождать.
Airtrain
11.10.2023 15:10>Если ручками отбить фоновую работу всего подряд
просто в шторке power save включаешь и на полнедели+ хватает (пиксель 6).
помню, даже во времена А4-А5 у sony xperia был powersave (судя по всему, патч от инженегров сони) с которым батареи хватало на неделю. уже давно всё в апстриме.
AlexVWill
11.10.2023 15:10Да, особенно BroadcastReceiver пострадал, там куча теперь разных ограничений. С т.з. энергоэффективности - да, а вот с т.з. гимороя разработчику сильно все хуже стало, причем без альтернативы. Вот например нужно было мне сделать приложение, которое бы фиксировало момент разблокировки смартфона. Вроде задача понятная, и есть даже специальный эвент на это, но оно работает только если приложение открыто, из самого приложения, а из BroadcastReceiver - хрен. т.е. смысл вообще теряется. Вот и приходится извращаться по разному, чтобы вроде бы элементарную задачу решить.
BRuTe007
11.10.2023 15:10На удивление пиксель7 стал жить на А14 заметно дальше. Раньше я ставил телефоне на зарядку к вечеру рабдня, теперь уже только перед сном. Считаю, что довольно неплохо это.
pred8or
11.10.2023 15:10+1Pixel 4a 5G. Честно говоря, не заметил ничего радикального. Да, поигрался с экраном блокировки, вернулся к тому что было. Камера меня всегда устраивала. А вот насчёт батарейки - лучше не становится. Ещё год назад дня полтора держал, сейчас - сутки. Хотя, конечно, возможно это естественный износ
Byteler
11.10.2023 15:10Это не естественный износ. Это рост нагрузки. Перелопачивает всякий trash, чтобы все "улучшить"
.Стратегия гигантов ИТ-индустрии: способен заплатить 28 тыс -- купи дороже, если не устраивает. Мой Tecno Spark за 5 держит неделю.
Kenya-West
11.10.2023 15:10+6Ну, как всегда. Вендор-лока и ограничений API завезли ещё больше, теперь даже Wi-Fi и Bluetooth не выключить программно через Tasker/Automagic, даже геолокацию можно получить исключительно через GPS (Google Play Services). То есть возможностей автоматизации у Android-телефонов сейчас примерно столько же, сколько у анальным образом кастрированных iPhone'ов. И они ещё борятся за
звание дома высокой культуры бытадолю Android в США, которая приближается к 20%. До сих пор, видимо, HQ в Google не понимают, почему они долю теряют... Пусть мой комментарий прочтут лучше уж.DaneSoul
11.10.2023 15:10+2долю Android в США, которая приближается к 20%
А кто именно такую долю насчитал?
Потому как есть данные о почти половине (42%) рынка Android в США на сайте statcounterв Google не понимают, почему они долю теряют...
Если посмотреть на том же сайте, то за 5 лет, доля уменьшилась всего на пару процентов.
K0styan
11.10.2023 15:10Одно дело - рынок и продажи, другое - практическое соотношение на руках. Айфоны дороже, их покупают реже и используют дольше, передавая родственникам и перепродавая, а Андроиды в похожих ситуациях идут на полку.
Я был продактом приложения для торговой сети (обычное FMCG, не что-то нишевое) - так соотношение iOS/Android у моих пользователей было 40/60 примерно. При этом в России уже который год доля продаж айфонов (в штуках, не в деньгах) крутится около 10%.
DaneSoul
11.10.2023 15:10Ваш аргумент логичен, но статистка которую я привел - это не продажи, это собирается с посетителей сайтов, то есть это именно доля пользователей.
Statcounter is a web analytics service. Our tracking code is installed on more than 1.5 million sites globally.
Dr_Faksov
11.10.2023 15:10А вот мне интересно, входящий звонок при вождении по картам по прежнему будет выкидывать из карт? Это при том что везде свистят о приоритете управления автомобилем и нежелательности отвлекаться на разговоры.
BARSRAB
11.10.2023 15:10А где такое есть в ведроиде? Тот же MIUI просто высвечивает входящий вызов вверху экрана, если активно како-либо приложение. Помнится, это даже Lineage OS на моем Nexus5 умел...
DikSoft
11.10.2023 15:10Появилась также возможность открытия ссылок в других профилях — например, ссылку из рабочего профиля можно открыть в домашнем.
Если эта фича неотключаемая , то безопасники будут не в восторге.. Это же дыра в периметре.
ritorichesky_echpochmak
11.10.2023 15:10+1Ого, вы разобрались как с этим нормально жить? Можете подсказать нормальную документацию, чтобы подключить рабочий профиль, но так, чтобы при увольнении все личные данные с личного телефона не махали ручкой? И вообще чтобы приватные данные в рабочий профиль не текли, равно как и возможность управления админом всего и вся вне рабочего профиля?
DikSoft
11.10.2023 15:10+2Всё зависит от выбранной модели управления. В варианте "личное устройство с рабочим профилем" для Android нормально работает Intune управление. И в общем корректно работает и удаление рабочего профиля. Я использую вариант, когда у корп админа нет полного контроля устройства.
Утверждается, что админ не видит личных данных. У меня, как у админа, не получилось увидеть что-то лишнее. Сильно глубоко не лез, но похоже, что это так.
Dolios
11.10.2023 15:10Ого, вы разобрались как с этим нормально жить?
Всё просто, если работодатель хочет, чтобы работник по работе делал что-то с телефона, пускай предоставит ему этот телефон.
quaer
11.10.2023 15:10В новой версии запрещена установка приложений с SDK ниже 23. По словам
разработчиков, это даёт возможность блокировать обход ограничений
полномочий посредством привязки к старым API. Правда, те приложения, что
уже установлены, но используют старые API, после обновления Android всё
же будут работать.Интересно, какова конечная цель? Сейчас для пользователей выглядит так, что часть приложений стала недоступна, для разработчиков - достаточно поменять цифру targetSdk при сборке ничего больше не меняя.
Newbilius
11.10.2023 15:10+2При замене targetSdk часть вещей из старых версий сломается, если ничего не менять. Например, какие-нибудь права запрашивались автоматически, теперь нужно дописать собственный код запроса прав и т.п.
quaer
11.10.2023 15:10Если приложение не использовало эти разрешения, то и в этом случае оно становится недоступным. А делать в этом случае перекомпиляцию только ради изменения targetSdk странно. К тому же некоторые разработчики делать это не будут, так как они сделали когда-то приложение, оно работает и они больше им не занимаются.
vikarti
11.10.2023 15:10Дело не только в разрешениях, там много мелких но потенциально проблемных отличий,
Новый targetSdk = разработчик прочитал чейнджлоги, учел их и протестировал.
Автоматом гугл это не проверит.
CrashLogger
11.10.2023 15:10-3Ограничили то, убрали это, урезали третье, пятое, десятое. В то время, как Apple добавляет новые возможности, Android с каждой новой версией все более превращается в куцый огороженный обрубок. Никогда не любил айфон, но последние тенденции просто вынуждают к смене платформы.
BARSRAB
11.10.2023 15:10+3Ээээм, а чем эти ограничения мешают в повседневном использовании смарта? Плюс кто заставляет ставить последнюю версию ведроида? Что мешает остаться на 12 или 13 версии? И какие, кстати, там возможности предоставляет огрызок, если не секрет?
CrashLogger
11.10.2023 15:10Ну вот мне например нужна работа приложений в фоне, нужна возможность программно включать-выключать wi-fi, нужна геолокация в фоне. А теперь все это запрещают. Да, можно сидеть на старых версиях оси, но новые телефоны будут выходить уже с новой.
BARSRAB
11.10.2023 15:10А где сказано, что этого больше не будет? Сказано, что навешают больше проверок и частично порежут фоновую активность. А необходимость программного управления wifi я вообще себе слабо представляю, т.к. у меня и wifi и BT включены постоянно.
nick_it
11.10.2023 15:10В новой версии запрещена установка приложений с SDK ниже 23
Уже второй обзор встречаю с этой фразой. Пришлось в документацию залезть. Имеется ввиду именно таргет СДК. А то у нас куча приложений с минСДК 21, и я немного напрягался )
Grajdanin134
11.10.2023 15:10"Есть и новый генератор фоновых изображений, который применяет машинное обучение для создания изображений по текстовому описанию пользователя"
Нет этого, не известно когда будет и анонс был для восьмого пикселя, все ранее выпущенное вероятно в пролете. Ну или я чего-то не знаю. Но у себя на пиксель 6 а такого не нашел.
Z3D
Интересно