🔚Início de Projeto
Algumas definições importantes para realizar no início de um projeto, para que o seu decorrer não hajam maiores problemas.
O que fazer após iniciar um projeto Flutter?
Ao iniciar o projeto, para não esquecer no futuro, substitua o valor 'com.example.loomiFlutterBoilerplate' em todos os arquivos pelo seu bundleId/applicationId desejado.
Com isso, o seu app vai contar com o bundleId/applicationId novo, alterado de forma correta para os 3 flavors iniciais. Por exemplo, se você alterar o valor para 'com.superprojeto.app', os seus flavors vão contar com os valores:
Production: com.app.superprojeto Staging: com.app.superprojeto.staging Homolog: com.app.superprojeto.homolog
Algumas das regrinhas que pensamos em relação a criação desses ids, para mantermos um padrão dentro da empresa e facilitar o uso de todos, é seguido o seguinte:
todos os bundle ids devem iniciar com "com.app"
caso fique na conta da loomi, é adicionado .loomi em seguida (questionar o responsável do projeto para saber em que loja o app vai ficar)
coloca-se o nome do projeto, sem '-' nem '_', exemplos: .bostonsci .tuyyo .smartsindico
por fim, caso o flavor não seja de produção, adiciona-se o nome do flavor abreviado: .staging .homolog
Isso vai servir para definições que vão vir no futuro da aplicação, como o upload do APP para as lojas, tanto da Apple quanto da Google, e também para o uso do Firebase. O firebase utiliza este exato bundleId/applicationId para seu funcionamento, com isso, você vai ter a possibilidade de ter projetos firebase para cada um dos seus flavors.
E apenas afirmando a importância dessa mudança logo no inicio do projeto, para que no arquivo 'setup_flavors.dart' o seu funcionamento já esteja correto, pegando as variaveis corretas para cada flavor escolhido.
E fora a alteração deste bundleId/applicationId, é necessário alterar para o Android também, em ''android/app/src/main/java/kotlin" o nome das pastas, renomeando para a maneira que você criou o seu nome. Caso seja necessário, pode criar novas pastas para que o caminho seja igual ao bundleId/applicationId criado.
É importante no ínicio do projeto, entender o funcionamento das envs, e fazer o uso delas no projeto desde o ínicio. Para utilizar da maneira correta, basta seguir o passo a passo aqui:
📩dotenvO projeto que vier com base no LEAP, não vai funcionar caso você não crie um arquivo .env.staging logo de ínicio, baseado no arquivo .env.example que já existe, então PRESTEM ATENÇÃO nisso.
Outro passo importante, levando em consideração que você já sabe quem vai estar contigo no projeto como responsável para revisão, é adicionar o arquivo CODEOWNERS dentro da pasta .github com o username do github de quem vai corrigir, por exemplo:
#Main Approver for every file
* @mateusfb @lucasvps
Para um melhor entendimento sobre os flavors, segue o link:
🍨Flavors no Flutter LeapCaso o projeto já possua a definição do seu icone e da sua splash, adicione ambas no projeto, e faça a sua indicação no arquivo pubspec.yaml. Em 'flutter_icons' e 'flutter_native_splash'.
Faça isso seguindo o processo em:
🌅Splash e IconLast updated