Объяснение
Platform channel связывает Dart и нативный код. Пересечение границы имеет стоимость и может завершиться ошибкой платформы. Разрешения и доступность API отличаются между ОС.
Задача для самостоятельного решения
Как работать, если функция устройства отсутствует?
Показать разбор ответа
Определить возможность через адаптер, показать доступную альтернативу и обработать отказ. Общая кодовая база не делает аппаратные возможности одинаковыми.