Draft: Android CI production build and Play Store auto-submission
Short description of changes
Revival of https://github.com/jamulussoftware/jamulus/pull/2909
The primary goal of the patch was to enable Google Play Store automated uploads as part of the GitHub build process.
CHANGELOG: DO NOT MERGE
Context: Fixes an issue?
The patch not only adopts the new action (r0adkll/upload-google-play@v1) but changes dependencies:
| Variable | from | to |
|---|---|---|
COMMANDLINETOOLS_VERSION |
6858069 | 7.0 |
ANDROID_NDK_VERSION |
r21d | 25.1.8937393 |
ANDROID_PLATFORM |
android-30 | android-33 |
ANDROID_BUILD_TOOLS |
30.0.2 | 33.0.0 |
AQTINSTALL_VERSION |
3.1.18 | 2.1.0 |
QT_VERSION |
5.15.2 | 6.3.2 |
As a side effect, it enables the Jamulus.pro to build on Windows by removing the Linux dependency (or at least side-stepping it).
Code changes are a side effect of the move to Qt6 (but I think probably work in Qt5.15.2, too, so could be trialled).
Does this change need documentation? What needs to be documented and how?
We should add documentation about the build process somewhere but that's not part of this ticket. Unless it already exists and needs changing.
Status of this Pull Request
Proof of concept (not to be merged soon).
What is missing until this pull request can be merged?
- Decide if we do this in r4.0 rather than r3.12.0.
- Someone who knows the build chain needs to review it.
- We need to understand the proposed Github action and agree it's acceptable (and choose a version to pin).
- The updated dependencies need to be understood, including their effect on the supported Android versions and how that affects Jamulus documentation.
Checklist
- [ ] I've verified that this Pull Request follows the general code principles
- [ ] I tested my code and it does what I want
- [ ] My code follows the style guide
- [ ] I waited some time after this Pull Request was opened and all GitHub checks completed without errors.
- [ ] I've filled all the content above
The main issue is the move to Qt6. I think that should be addressed separately. If this change requires Qt6, then it gets blocked until we've made the decision to move Android to Qt6 and made the necessary code changes correctly.
I can only test this on a PC with bliss os. It would be interesting to see if the qt6 build shows the same UI overflow issues as iOS