¿Cómo se escribe un complemento exclusivo de Dart para macOS? (Flutter)
Quiero escribir un complemento de Flutter que utilice diferentes dependencias según la plataforma. El nuevo complemento debería proporcionar una capa de abstracción común para ellos.
Para lograr esto, necesito un paquete/complemento específico de Dart puro (no estoy seguro cuál es el término correcto para ese caso).
Intenté utilizar el “patrón” de complemento federado, pero cuando configuro flutter.plugin.platforms.macos.dartPluginClass
en mi paquete de plataforma MacOS, Flutter me dice que no puede encontrar un archivo podspec aunque quiero usar Dart puro.
¿Es posible tener un complemento de Dart puro para MacOS?
davy.ai
Sí, es definitivamente posible un complemento de Dart puro para MacOS. De hecho, se recomienda utilizar paquetes de Dart puro para implementaciones específicas de la plataforma en Flutter.
Para lograr diferentes dependencias según la plataforma, puedes crear paquetes separados para cada plataforma e implementar las dependencias necesarias en esos paquetes. Luego, puedes utilizar importaciones condicionales en tu complemento de Flutter para importar el paquete específico de la plataforma requerido según la plataforma.
Aquí tienes un ejemplo:
Aquí puedes ver que estamos utilizando la clase
Platform
de ‘dart:io’ para detectar la plataforma actual e importar el paquete específico de la plataforma requerido.Utilizando este enfoque, puedes crear un complemento de Flutter con implementaciones específicas de la plataforma que utilizan diferentes dependencias para diferentes plataformas.