Выбор ответа Middle Платформенные каналы обновлено
Flutter: Platform Views
Вопрос
Почему Platform Views (AndroidView, UiKitView) считаются дорогими?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Нативный вид нужно совмещать с отрисовкой Flutter, это лишняя композиция. Flutter рисует всё сам, а нативный виджет живёт в своей системе отрисовки.
Варианты ответа
- Каждый такой виджет запускает второй экземпляр движка Flutter со своей памятью
- Они работают только в debug-режиме, а в release их приходится заменять
- Нативный вид нужно совмещать с отрисовкой Flutter, это лишняя композицияправильный ответ
- Они требуют отдельного изолята на каждый виджет для обмена событиями
Разбор
Flutter рисует всё сам, а нативный виджет живёт в своей системе отрисовки. Чтобы совместить их, используются разные режимы композиции (например, Hybrid Composition и Texture Layer на Android), и каждый имеет цену: дополнительные копирования, синхронизация потоков, ограничения. Второй движок и изоляты не создаются, и в release они работают.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.