касательно вопроса однозначно надо примерно понимать работу андроида нативно, плюс иногда могут возникнуть проблемы на этой стороне и хорошо бы разбираться не только в фреймфорве, но и в платформе, а так пишут в основном платформенное взаимодействие если выбирать флаттер, к примеру узнать заряд батареи напрямую не получится, нужно звать нативный метод и кидать результат во флаттер, а вот интерфейс накидать и не платформенную логику это запросто на дарте
Кажется что обычно все заканчивается конфигурированием манифеста или info.plist. Или надо прям фигачить java код?