MoreCore Platform
Development
Technician App - Development
MOR-PLN-027 Version 1 Last Review Date: Nov, 2024

Technician App - Development

1. Overview

ComponentDescription
ProjectA DevOps Project for the App
GIT RepoA GIT Repo component within the App projetct
App CenterAn online app building platform, capable of compiling both Android and iOS versions, prior to pushing those to the appropriate store.
Google Play Store
Apple App Store

2. DevOps Project and Repo

https://cbc-melb.visualstudio.com/CMMS%20Mobile%20App%20Git%20Repo (opens in a new tab)

6. Setting up the Development Environment

6.1. Install Visual Studio

Install Visual Studio 2022 Community (opens in a new tab), with the following components
  • Maui/Xamarin
  • Android SDK versions 33/34
  • .NET Development
Request access for blocked files

It is likely that Threat Locker will block installation of multiple components as installation progresses

  • If a Threat Locker pop-up appears, you can request access by clicking the 'Request Access' button
  • Some elements may be blocked silently. Right click Threat Locker in the system tray and select 'Blocked Items' to display a list. Manually request access if necessasry.

6.2. Clone Repo

Clone the GIT Repo
  • Navgate to the Project > GIT Repo
  • Click 'Clone'
  • Select 'Visual Studio'
Request access if Threatlocker blocks executable
Sign in to the repo within Visual Studio, if necessary
Setup build process for Android phones
  • Enable 'Developer Mode' on your device. (Google this as the exact process can differ by device)
  • Plug device in via USB.
  • Once connected, the device should appear as a build target in Visual Studio.
Build app
  • App should appear on your device and launch

6.x.

7. Deploying the Technician App

Push commit to (branch)
  • Create a PR
  • Add commits
  • Link tasks
  • Complete merge

8. Common Dev tasks

Update App version

All app changes require the app version to be updated. App version numbering follows a major.minor.patch format.

The app includes functionality to detect where app version changes occur, and prompt the user to update.

  • Patch level changes do not force an update. These are for minor bug fixes or changes that don't include backend API changes that would cause users that haven't updated to encounter issues.
  • Minor level changes TBC
  • Major level changes are required. The changes in the backend API's will mean previous versions will not function as intended. Once released, uses must use this version to continue using the app at all.

To update the app version in code:

Create a new branch
  • Commit title: 'Bump to version (version)'
Update files:
  • CMMS.iOS/info.plist: Update CF Bundle Version
  • CMMS.Android/AndroidManifest.xml: Update android:versionName
  • CMMS/Helpers/Configuration.cs: Update CFBundleVersion in each environment config set
Commit to new Branch

Updating Android SDK Version

(Optional) Update Visual Studio
  • This is sometimes necessary to make newer Android SDK versions available
Update Available SDK version
  • In Visual Studio, open the 'Android SDK Manager'
  • Select the desired SDK platform, and download it
  • Sometime updates may be available and can be performed at the same time.
Update Android project
  • Right click on the Android project and select 'properties'