Repository navigation
Releases: phuong-dev17/TrafficCDMForOperator
Releases · phuong-dev17/TrafficCDMForOperator
Release list
v1.0
With this release we mark the application feature complete:
- The application can send all TCMF messages according to specificaiton version 0.0.7
- In app navigation is monitored in a controlled way:
- Navigation up (back arrow in top application bar) is disabled.
- pressing physical back button will give different result depends on the page the user is in:
- Login page: press back button -> exit app
- Submission overview:
- press back button twice within 2 seconds -> logout
- press back button once -> snackbar informing that pressing back button one more time will log the user out
- Submit timestamp page:
- press back button -> back to submission overview page
- Press Cancel button on submit timestamp page also brings the user back to submission overview page
- Submission overview page:
- is complete with all expected icons and information from RISE
- is in reversed chronological order. Latest submission will be put at the top of the list.
- All controls are kept (documented here for the sake of an official release only):
- press one submission -> view mode
- long press one submission -> duplicate the submission so the user doesn't have to fill it again from beginning.
- swipe left on one submission -> undo the submission
- swipe right on one submission -> modify the submission. The modify mode will first send out MessageOperation to cancel the old message using the old messageId, then send out the modified version with new messageId.
- click the FAB (Floating Action Button) will bring the user to the submit timestamp page.
- Submit timestamp page:
- User can now choose location from a list of predefined locations. After choosing a location type and the user put a ":", the list of locations will be shown. The list will be updated the same time the user inputs more characters. After the user chooses one location name, its abbreviation will be loaded to the final string with format tcmf:location::<location_abbreviation>
- location, reference object and carrier must have format tcmf:<location|reference_object|carrier>::. Fail to comply with the rule will result in Invalid Payload feedback from the application.
- attribute must have format tcmf:attribute:: in case timeSequence is set. Fail to comply with the rule will result in Invalid Payload feedback from the application.
Known issue:
- AppAuth - Android, the third party lib used to connect to the OpenId Connect server, sometimes fails to load the auto service discovery configuration. The complete application crashes after that. Starting the application again solves the problem.
- Enable navigation up (back arrow in top app bar) will mess up the navigation flow of the application because using navigation up in an uncontrolled way will make Android OS re-enter the SubmissionActivity. Without a datastore keeping the login state, the login state is only in cache and will easily be lost on configuration change or Activity re-enter. Therefore, the user is logged out, the moment navigation up is used. This is solved by carefullly handling in app navigation as mentioned about. If later developers want to enable navigation up, please consider implement datastore to store authentication state or check back with the third party library.
v0.2
in this release, we have :
- finish submitting location state
- finish message operation
- basic UX with one page for submission over view, one page to submit time stamp.
- in the submission overview, for each submission, the user can :
- click to the submission to view it again.
- long click to dupplicate the content, so it saves time for the user to submit a new message with new message ID.
- swipe left to undo the message. This basically send out the MessageOperation for the selected message.
- swipe right to modify the message. This action will first undo the selected message, then send out the modified content as a new message with new message ID.
Version 0.1
In this release, we have finished:
- User login page with Keycloak server using AppAuth - Android lib
- First draft of the submission page
- Configure overall theme for the application.