Base App Setup
This Base App will be the foundation for the Bundle that is later shipped to the App- and Play-Store.
It links the plugins dynamically and has hardcoded links to the open Contract and the navida specific plugin.
Since the Base App is build and shipped in the end, it should also hold the information about used Backend URLs, AppName, AppIcon and many more based on the Flavor and schema selected for the build
Scheme/Flavor Definition
The Navida Pro Plattform will have 3 environments in total:
Environment | Description |
---|---|
Dev | Backend is hosted in an EY environment. Main focus of this environment is to develop the Plattform and test new approches. |
Test / PreProd | Backend is hosted on Client Side. Compared to Dev, this environment is much more stable and should "mirror" Prod. Manual Tests (QA) and Automated End-to-End (SIT) Tests will also be performed here |
Prod | Production environment |
Dependency Linking
To bundle the App, we have to connect multiple dependencies, some of those are static and need to be directly referenced in code. Plugin Dependencies must be collected via a configuration file (plugins.json
).
Static Linking
- Open Contract
- Navida specific Plugin
Since open Contract and the Navida specific plugin are referenced directly in the Base App, those can be linked directly using the depenedency management per plattform.
Dynamic Linking
Plugins are linked more dynamically to automate the process later on. To achieve this, the plugin.json
is read by the dependency manager (cocoapods or gradle) and will link the dependencies.
[
{
"id": "ey.navida.video",
"name": "Video",
"git": "git@...",
"branch": "main"
},
{
"id": "ey.navida.video",
"name": "Video",
"git": "git@...",
"branch": "main"
}
]
The linked dependencies must be referenced in Code and then passed to the navida specific plugin.
This will be achieved by generating Code according to the plugins.json
. For development this generated file could be directly written by the Devs.