Here are some useful notes when making changes on this project.
But, before going deeper I suggest you to take a look to the opensource.guide, there are many things to learn from there! 😃
- Local setup
- Directory structure
- Debugging tools
- Continuous integration
- Gradle upgrade
- Firebase config file
- Logcat
- Resources
- Signing
- Store listing
-
Clone/Fork this repo.
-
Replace the
app/google-services.json
file with the one from Firebase console. You won't be able to commit changes on this file. -
Check how to prevent modifications at #Firebase config file
-
Run:
./gradlew check
It must return
BUILD SUCCESS
.
- app/ Android application module which depends on all other submodules to be the great app you're building.
- commons_android/ Android library module for Android-related foundation staff.
- commons_file/ Android library module for File handling staff.
- config/ contains code analyzers configuration files.
- feature_addbutton/ Android Feature module containing all code and resources required in order to let users add a new button.
- gradle/wrapper/ contains Gradle's binary in order to be able to run this project everywhere.
- model/ Android library module containing our business logic.
- store-listing/ contains all listing related files, like GIMP files to edit screenshots.
We use some really useful tools like:
Please refer to their docs for setup & guidelines.
We use Circle CI, so if you're gonna change the config.yml file you can check the config using the local CLI.
circleci config validate
AbstractRobolectricTest
.
As described at Gradle docs#Adding wrapper you must run:
> ./gradlew wrapper --gradle-version ${desiredVersion}
To prevent future modifications on app/google-services.json
I run:
> git update-index --skip-worktree app/google-services.json
To revert this just:
> git update-index --no-skip-worktree app/google-services.json
Field | REGEXP |
---|---|
TAG | `^(?!(?:FirebasePerformance |
Package | com.github.barriosnahuel.vossosunboton |
You can filter logcat messages by:
adb logcat -s FirebasePerformance
- Colors selected using: Material Design palette generator
- Icon generated using: romannurik.github.io/AndroidAssetStudio/icons-launcher
- In-App icons using: Material Design resources
The following files must be located into the root dir:
nahuelbarrios.keystore-appbundle.pkcs12
secure.properties
As mentioned before, under store-listing/ there are the assets for the store listing and the original GIMP files to edit those assets.