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

Flutter: что можно передать через канал

Вопрос

Какое значение нельзя напрямую передать через MethodChannel со стандартным кодеком?

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

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

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

Коротко

Правильный ответ: Экземпляр своего класса User без перевода в Map. StandardMessageCodec поддерживает null, bool, int, double, String, Uint8List и другие типизированные списки, List и Map из поддерживаемых значений.

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

  1. Map<String, Object?> со строками и числами внутри
  2. Экземпляр своего класса User без перевода в Mapправильный ответ
  3. Uint8List с байтами изображения
  4. List<int> со списком идентификаторов

Разбор

StandardMessageCodec поддерживает null, bool, int, double, String, Uint8List и другие типизированные списки, List и Map из поддерживаемых значений. Свой класс нужно перевести в Map (и обратно на другой стороне) или описать в Pigeon, который сгенерирует сериализацию.

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

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