Notre-Dame icon indicating copy to clipboard operation
Notre-Dame copied to clipboard

Adding flavors

Open apomalyn opened this issue 4 years ago • 15 comments

Is your feature request related to a problem? Please describe. As a developer/maintainer, I would like to be able to have a DEV build of the application along with a PRODUCTION build. This will also set the starting block for the beta environment.

Describe the solution you'd like Each flavour would have a specific app icon (we could change the background colour of the app icon like Chrome canary is yellow or add a dev/debug banner) and a different package id (for dev/debug: normal package id with .dev OR .debug at the end).

I think this medium article describes the complete process.

Acceptation criteria

  • [ ] Documentation
  • [ ] App icon for each flavour
  • [ ] App name for each flavour
  • [ ] Package id for each flavour
  • [ ] Test (if needed)

apomalyn avatar Oct 22 '21 13:10 apomalyn

Did some tests on that what about inverting App|ETS and ÉTS colors? so the purple become primary and the red become where there was purple before:

What do you think @apomalyn? The tutorials you shared is really helpful! I did every part of the issue for Android. I still have to do the iOS part before making a PR :smile:

MysticFragilist avatar Nov 09 '21 21:11 MysticFragilist

Do I make 3 build flavors? One Prod, one Beta and one dev?

MysticFragilist avatar Nov 10 '21 21:11 MysticFragilist

@MysticFragilist I will say only change the icon of the application (purple background for dev, red background with beta written under the ÉTS logo for example). Because if we switch colours inside the application we will not 'see' what the student really see. For example, let's say we add something on the AppBar that may look really good on the dev application (purple primary) but is strange on the beta/prod application (red primary) 😄

apomalyn avatar Nov 10 '21 23:11 apomalyn

Yeaa right make sense, I'll change it! I'm currently at the club, I'm doing the iOS part 😄 should be good to go soon ^^

MysticFragilist avatar Nov 10 '21 23:11 MysticFragilist

Here is the two app icon on iOS! I think I finished the flavor for the iOS development. I'll just need to change the icon for android as well and it will be good.

A nice thing to have would be to design an AppIcon specifically for beta maybe a small tag "beta" on the icon below the name could be good?

MysticFragilist avatar Nov 10 '21 23:11 MysticFragilist

What do you think about these? (the second one is for android because of the adaptative background)

apomalyn avatar Nov 11 '21 00:11 apomalyn

Reallyyy goood! I like them 😄

MysticFragilist avatar Nov 11 '21 02:11 MysticFragilist

Hmmm just one thing, I suppose it's the font, but the A seems a bit offset from the other letter. It's an idea but would you be able to add some spacing between the B and E and the E and T ? Maybe it would render better?

MysticFragilist avatar Nov 11 '21 02:11 MysticFragilist

@MysticFragilist is this better? 😄

apomalyn avatar Nov 11 '21 02:11 apomalyn

Ahhh yess really good 💯 I like it, great job!

MysticFragilist avatar Nov 11 '21 02:11 MysticFragilist

Couple information for me :smile: :

For Beta open test in each store: https://developer.apple.com/testflight/ https://play.google.com/console/about/opentesting/ https://docs.fastlane.tools/getting-started/android/beta-deployment/ https://docs.fastlane.tools/getting-started/ios/beta-deployment/

# Production build
$ flutter build -v ${{ matrix.build_target }} ${{ matrix.build_args }} --build-number=$(date '+%s') --release --dart-define=GH_API_TOKEN=${{ secrets.GH_API_TOKEN }} --flavor=prod

# Beta  build
$ flutter build -v ${{ matrix.build_target }} ${{ matrix.build_args }} --build-number=$(date '+%s') --release --dart-define=GH_API_TOKEN=${{ secrets.GH_API_TOKEN }} --flavor=beta

# Development run
$ flutter run -t lib/main_dev.dart  --debug --flavor=dev

MysticFragilist avatar Nov 16 '21 16:11 MysticFragilist

Also @apomalyn, what is the expected workflow of the beta deployment? Do we deploy everytime there is a new release as draft?

MysticFragilist avatar Nov 16 '21 16:11 MysticFragilist

Also @apomalyn, what is the expected workflow of the beta deployment? Do we deploy everytime there is a new release as draft?

I would say each time there is a pre-release available, what do you think about that? :smile:

apomalyn avatar Nov 16 '21 17:11 apomalyn

yes that would be perfect!

MysticFragilist avatar Nov 17 '21 00:11 MysticFragilist

J'ai trouvé une meilleur façon de les implémenter avec un outils qui les créé automatiquement: https://pub.dev/packages/flutter_flavorizr ça sera nettement plus simple de les définir comme ça

MysticFragilist avatar Nov 02 '22 13:11 MysticFragilist