Olá Gabriela, tudo certo?
Essa é uma pergunta muito interessante e complexa de se responder, vou fazer meu melhor :)
No flutter a gente cria widgets
que são portados para o código nativo de ambas as plataformas, então digamos que você use o Cupertino para desenhar sua aplicação, algumas fontes do iOS ficariam "estranhas" no Android, mas, utilizando o Material App nós não teriamos esse porblema visto que ele foi desenvolvido sem visar uma plataforma específica. Em questão de fazer um layout no flutter é certo que tanto em Android quanto em iOS ficariam bem parecidos.
Sobre fazer um para cada você pode separar os widgets
conforme reconheça seu dispositivo ou fazer o mesmo layout para ambas, porém, vai depender um pouco do seu objetivo com o aplicativo, no caso de utilizar dois códigos de layout para cada dispositivo ficaria interessante para você?
Um exemplo dessa implementação seria esse aqui:
if (Platform.isAndroid) {
// Código específico para o android
} else if (Platform.isIOS) {
// Código específico para iOS
}
Ou fazer um layout que aborde o Material App e fique interessante para as duas plataformas com um só código?
Uma conclusão que se pode tirar é que vai depender o quão específico você vai querer deixar seu App para cada plataforma, se quiser ver como construir layouts com base no Cupertino no flutter basta dar uma olhada na página de cupertino para o flutter e para o Material App seria essa página do material components.
Se ficou qualquer dúvida, estarei a disposição.
Forte abraço e bons estudos!!
Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!