Новости
Улучшение стабильности и производительности эмулятора Android
Эта инициатива состояла из нескольких рабочих потоков, направленных на уменьшение количества сбоев, ускорение времени запуска, устранение ошибок и создание более эффективных способов обнаружения и предотвращения проблем в будущем.
В Google знают, насколько важны стабильность, надежность и производительность Android-эмулятора для повседневной работы Android-разработчиков. Выслушав ценные отзывы о стабильности, надежности и производительности, команда Android Studio на шесть месяцев отказалась от работы над крупными функциями эмулятора и начала инициативу под названием Project Quartz. Эта инициатива состояла из нескольких рабочих потоков, направленных на уменьшение количества сбоев, ускорение времени запуска, устранение ошибок и создание более эффективных способов обнаружения и предотвращения проблем в будущем.
Повышение стабильности и надежности
Ключевая цель проекта Quartz заключалась в уменьшении количества сбоев эмулятора, которые могут расстраивать и блокировать разработчиков, снижая их производительность. В компании сосредоточились на устранении проблем, вызывающих сбои и зависания бэкенда и пользовательского интерфейса, обновили UI-фреймворк, фреймворк гипервизора и графические библиотеки, а также устранили технический долг. Это включало в себя:
- Переход на новую версию Qt, кроссплатформенного фреймворка для создания графических пользовательских интерфейсов эмулятора Android, и обеспечение его стабильной работы на всех платформах (начиная с версии 34.2.13). Это также было необходимым изменением, чтобы такие вещи, как Google Maps и пользовательский интерфейс настроек местоположения, продолжали работать в эмуляторе Android.
- Обновление gfxstream, системы рендеринга графики, используемой в эмуляторе Android, для улучшения нашего графического слоя.
- Добавление более 600 сквозных тестов в существующий набор тестов pytests.
В результате в последней стабильной версии Android Studio наблюдается на 30% меньше сбоев, о которых сообщают разработчики, согласившиеся делиться информацией о сбоях. Наряду с дополнительным сквозным тестированием это означает более стабильную, надежную и качественную работу с меньшим количеством прерываний при использовании эмулятора Android для тестирования ваших приложений.
На этом графике показано снижение количества сообщений о сбоях в стабильных версиях эмулятора Android (новые версии находятся вверху).
Google также улучшил телеметрию и ведение логов, чтобы лучше понять и выявить основные причины сбоев, и добавил больше тестов в процесс перед выпуском, чтобы улучшить способность выявлять потенциальные проблемы до релиза.
Повышение качества релизов
Команда также реализовала ряд мер по повышению качества релизов, в том числе увеличили количество и частоту сквозных, автоматизированных и интеграционных тестов на macOS, Microsoft Windows и Linux. Сейчас в процессе постсабмита проводится более 1100 сквозных тестов (по сравнению с 500 тестами в прошлом) на всех поддерживаемых операционных системах. Эти тесты охватывают различные сценарии, включая (среди прочего) различные конфигурации снепшотов эмулятора Android, различные варианты графических карт, работу с сетевыми функциями и Bluetooth, а также сравнение производительности между версиями системных образов эмулятора Android.
Такое комплексное тестирование гарантирует правильное функционирование этих критически важных компонентов и обеспечивает более надежную среду тестирования для разработчиков. В результате разработчики приложений для Android могут точно оценить поведение своего приложения в более широком диапазоне сценариев.
Сокращение числа открытых проблем и ошибок
Также было важно сократить количество открытых проблем и ошибок, зарегистрированных для эмулятора Android, устранив их первопричину и обеспечив покрытие большего количества сценариев использования, с которыми вы сталкиваетесь в производстве. В ходе проекта Quartz сократили количество открытых проблем на 43.5% — с 4 605 до 2 605. 17% из них были активно исправлены в ходе проекта Quartz, а остальные были закрыты как устаревшие или ранее исправленные (например, в более ранней версии эмулятора Android) или как дубликаты других проблем.
Следующие шаги
Хотя эти улучшения радуют, это еще не конец. Команда продолжит работу над улучшением качества Project Quartz, чтобы еще больше расширить возможности эмулятора Android для разработчиков приложений.
Как всегда, ваши отзывы были и остаются бесценными, помогая сделать эмулятор Android и Android Studio более надежными и эффективными для ваших потребностей в разработке. Обмен метриками и крашдампами очень важен для понимания того, что именно вызывает сбои, чтобы можно было определить приоритетность исправлений.
Вы можете подписаться на отправку информации, перейдя в Settings, затем Appearance and Behavior, затем System Settings, затем Data Sharing и установив флажок «Send usage statistics to Google».