Mobile Release
- Release
- Testing
Release
Steps to deploy new mobile version to respective android/iOS destinations using fastlane.
- Get up to date master branch and tags
git fetch origin --tags
- Run
fastlane bump
to bump app versions. This will create a tag and commit for the new version. - Push up commit and tag to master
git push origin HEAD --tags
iOS Only
General note - Testflight can take a while to update and process a new build is uploaded, a wait time of 15min is possible.
Manage Compliance
If not automatically inserted by fastlane
, export compliance has to be manually set for a new build. Select:
None of the algorithms mentioned above
External Testing
Builds uploaded to Testflight will automatically be deployed to Development Team (internal testing). When a build has been validated with some testing, it is ready to be deployed to external testers. On Groups column of build, select 'Alpha Testers'.
- Add build to Alpha Testers group.
- Expire previous builds.
Testing
Configuration
For the highest fidelity, it is best to test a build as it will be compiled when deployed - in a Release
configuration. This can be done locally for android or iOS by building and installing on device. Best results are to test on physical devices as issues may present themselves on emulator that don't exist on a device and vice-versa.
Triggering a CI Build
If you need to check whether a config, package, or project change affects the build process (without bumping any versions), you can force the CI runners to build the current version like this:
Android Build
- Push your branch to
do-android-release-build
. - Alternatively, any push to
master
will also trigger an Android build automatically.
iOS Build
- Push your branch to
force-ios-build
.
Key Features
Prior to deploying new app versions, these are key things to look over.
-
Login/Logout
-
Video feed
-
Verify scroll interaction, responds to press, data present.
-
Video/Clip playback
-
Verify that playlist/control interactions function as intended, are accessible.
-
Clips player should auto play.
-
Recording flow
-
Orientation correctly unlocks camera prior to starting a recording, and locks once a recording is started.
- Upload can be enabled/disabled, upload resumption is automatic while recording
- Visual and Audio warnings appear only for a active upload.
-
On stop recording, app should transition to portrait mode and remain locked in this orientation.
-
Account settings
-
Buttons are accessible.
-
Player stats
- Stats display correctly, charts visible.