Android Marshmallow ( кодовое название Android M во время разработки) — шестая основная версия операционной системы Android , разработанная Google , являющаяся преемницей Android Lollipop . Она была анонсирована на конференции Google I/O 28 мая 2015 года и выпущена в тот же день в качестве бета-версии , а затем официально выпущена 29 сентября 2015 года. Её сменила Android Nougat 22 августа 2016 года. [5]
Android Marshmallow в первую очередь фокусируется на улучшении общего пользовательского опыта своего предшественника. Он представил новую архитектуру разрешений на выбор, новые API для контекстных помощников (впервые использованные новой функцией « Now on Tap » для предоставления контекстно-зависимых результатов поиска), новую систему управления питанием, которая снижает фоновую активность, когда устройство не используется физически, встроенную поддержку распознавания отпечатков пальцев и разъемов USB-C , возможность переноса данных и приложений на карту microSD и другие внутренние изменения.
Android Marshmallow встретил низкие показатели внедрения: к июлю 2016 года 13,3% устройств Android работали под управлением Marshmallow. [6] С тех пор использование Marshmallow неуклонно росло, и к августу 2017 года 35,21% устройств Android работали под управлением Marshmallow, прежде чем пойти на спад. По состоянию на ноябрь 2023 года [обновлять]1,4% устройств Android работали под управлением Marshmallow. [7] Обновления безопасности для Marshmallow прекратились в августе 2018 года.
По состоянию на сентябрь 2024 года Android Marshmallow является старейшей версией Android, все еще поддерживаемой сервисами Google Play. [8] [9]
Android Marshmallow имел внутреннее кодовое название «Macadamia Nut Cookie». [10] Первая предварительная версия для разработчиков Marshmallow под кодовым названием Android «M» была представлена и выпущена на Google I/O 28 мая 2015 года для смартфонов Nexus 5 и Nexus 6 , планшета Nexus 9 и телевизионной приставки Nexus Player . [11] [12] [13] Вторая предварительная версия для разработчиков была выпущена 9 июля 2015 года, [14] [15] а третья и последняя предварительная версия была выпущена 17 августа 2015 года, вместе с объявлением о том, что Android M будет называться Android « Marshmallow ». [16] [17]
29 сентября 2015 года Google представила устройства для запуска Marshmallow: Nexus 5X производства LG , Nexus 6P производства Huawei , [18] [19] [20] а также собственный планшет Google Pixel C. [21] [22]
Обновления Android 6.0 и заводские образы для Nexus 5 , 6 , 7 (2013) , 9 и Player были выпущены 5 октября 2015 года. [23] Более старые устройства Nexus, включая Nexus 4 , Nexus 7 (2012) и Nexus 10 , не получили официального обновления. [24] 14 октября 2015 года LG объявила, что планирует выпустить Marshmallow для своего флагманского смартфона LG G4 в Польше на следующей неделе, что станет первым сторонним устройством, получившим обновление до Marshmallow. [25] [26]
Android 6.0.1, программный патч с исправлениями безопасности, поддержкой эмодзи Unicode 8.0 (хотя и без поддержки расширений оттенков кожи для человеческих эмодзи) и возвращением функции «до следующего будильника» в режиме «Не беспокоить», был выпущен 7 декабря 2015 года. [27] [28] [29]
Новый API «Assist» позволяет отправлять информацию из текущего открытого приложения, включая текст и снимок экрана текущего экрана, в назначенное приложение « помощник » для анализа и обработки. Эта система используется функцией приложения Google Search « Google Now on Tap », которая позволяет пользователям выполнять поиск в контексте информации, отображаемой в данный момент на экране. В то время как кнопка «Домой» использовалась в Android 5 для отображения доступных приложений, теперь кнопка «Домой» используется (вместе с голосовой командой) для создания карточек на экране, которые отображают информацию, предложения и действия, связанные с контентом. [30] «Прямой обмен» позволяет меню обмена отображать недавно использованные комбинации контактов и связанное приложение в качестве прямых целей. [30]
Новая функция «Адаптивное хранилище» позволяет по желанию обозначить вновь вставленную SD -карту или другой вторичный носитель информации как «внутреннее», а не «переносное» хранилище.
«Переносное» хранилище — это поведение по умолчанию, используемое в предыдущих версиях Android, рассматривающее носитель как вторичное устройство хранения для хранения пользовательских файлов, и носитель может быть удален или заменен без последствий, но установленные пользователем приложения ограничены записью в соответствующие каталоги имен пакетов, расположенные внутри Android/data
. Это ограничение было введено в Android 4.4 KitKat . Storage Access Framework , с помощью которого общий доступ к записи на карты памяти был восстановлен в Android 5.0 Lollipop , обратно несовместим и работает медленнее из-за задержек . [31]
При обозначении как «внутреннее» хранилище носитель переформатируется с помощью зашифрованной файловой системы ext4 и «принимается» операционной системой в качестве расширения основного раздела хранилища. Существующие данные (включая приложения и папки «личных» данных) переносятся на внешнее хранилище, и нормальная работа устройства становится зависимой от наличия носителя. Приложения и функции операционной системы не будут работать должным образом, если принятое устройство хранения удалено, и карту нельзя будет повторно использовать на других устройствах до тех пор, пока она не будет переформатирована . Если пользователь потеряет доступ к носителю, принятое хранилище может быть «забыто», что сделает данные навсегда недоступными. [30] Однако Samsung и LG удалили возможность использовать карту SD в качестве «внутреннего» хранилища на своих устройствах Galaxy S7 и G5 , при этом Samsung утверждает, что эта функция может привести к непредвиденной потере данных и не позволит пользователям переносить данные с помощью карты. [32] [33]
Android Marshmallow представляет переработанную модель разрешений приложений; приложения больше не получают автоматически все указанные разрешения во время установки. Теперь используется система подписки, в которой пользователям предлагается предоставить или отклонить отдельные разрешения (например, возможность доступа к камере или микрофону) для приложения, когда они необходимы в первый раз. Приложения запоминают предоставленные разрешения, которые могут быть отозваны пользователем в любое время. [12] [34] [35] Новая модель разрешений используется только приложениями, разработанными для Marshmallow с использованием его комплекта разработки программного обеспечения (SDK), а старые приложения продолжат использовать предыдущий подход «все или ничего». Разрешения по-прежнему можно отозвать для этих приложений, хотя это может помешать их правильной работе, и на этот счет отображается предупреждение. [36] [37]
Marshmallow представляет новые схемы управления питанием , известные как «Doze» и «App Standby»; при работе от батареи устройство переходит в состояние низкого энергопотребления, если оно неактивно и не подвергается физическому воздействию. В этом состоянии сетевое подключение и фоновая обработка ограничены, и обрабатываются только «высокоприоритетные» уведомления. [30] Кроме того, сетевой доступ приложений откладывается, если пользователь недавно не взаимодействовал с приложением. [38] Приложения могут запрашивать разрешение на освобождение себя от этих политик, но будут отклонены из Google Play Store как нарушение его политики «Опасные продукты», если их основные функциональные возможности не «неблагоприятно затронуты» ими. [38] [39]
Android Marshmallow обеспечивает встроенную поддержку распознавания отпечатков пальцев на поддерживаемых устройствах через стандартный API , что позволяет сторонним приложениям реализовывать аутентификацию на основе отпечатков пальцев. Отпечатки пальцев можно использовать для разблокировки устройств и аутентификации покупок в Play Store и Google Pay . Android Marshmallow поддерживает USB-C , включая возможность давать устройствам команду заряжать другое устройство через USB. Marshmallow также представляет «проверенные ссылки», которые можно настроить для открытия непосредственно в указанном приложении без дополнительных подсказок пользователя. [12] [11] Пользовательские данные для приложений, ориентированных на Marshmallow, можно автоматически сохранять на Google Диске по Wi-Fi. Каждое приложение получает до 25 МБ хранилища, что отдельно от выделенного пользователю хранилища Google Диска. [30]
Начиная с Marshmallow, документ определения совместимости Android содержит новые требования безопасности для устройств, устанавливающие, что те, которые способны получать доступ к зашифрованным данным без ущерба для производительности, должны по умолчанию включать безопасную загрузку и шифрование устройства. [40] Эти условия составляют часть спецификации, которая должна быть выполнена для сертификации для операционной системы, [40] и возможности лицензировать программное обеспечение Google Mobile Services . [41] Требование обязательного шифрования устройства изначально должно было вступить в силу в Lollipop, но было отложено из-за проблем с производительностью. [40]
Google Play запрещают приложениям запрашивать прямое освобождение от функций управления питанием в Android 6.0+ (Doze и App Standby), если это не влияет на основную функцию приложения.