Выбор ответа Middle Платформенные каналы обновлено

Flutter: Platform Views

Вопрос

Почему Platform Views (AndroidView, UiKitView) считаются дорогими?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Нативный вид нужно совмещать с отрисовкой Flutter, это лишняя композиция. Flutter рисует всё сам, а нативный виджет живёт в своей системе отрисовки.

Варианты ответа

  1. Каждый такой виджет запускает второй экземпляр движка Flutter со своей памятью
  2. Они работают только в debug-режиме, а в release их приходится заменять
  3. Нативный вид нужно совмещать с отрисовкой Flutter, это лишняя композицияправильный ответ
  4. Они требуют отдельного изолята на каждый виджет для обмена событиями

Разбор

Flutter рисует всё сам, а нативный виджет живёт в своей системе отрисовки. Чтобы совместить их, используются разные режимы композиции (например, Hybrid Composition и Texture Layer на Android), и каждый имеет цену: дополнительные копирования, синхронизация потоков, ограничения. Второй движок и изоляты не создаются, и в release они работают.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.