App to record audio of max 30 seconds on an android device.
The user must grant two permissions:
- to record audio the app must have the RECORD_AUDIO permission
- to listen the audio the app must have the POST_NOTIFICATIONS permission
When the app is launched the MainActivity is created: there is a recycler view with the records already present and a button to record. If the user press the button the app starts to record audio, this is saved in a new file with date-time as name.
From the MainActivity you can delete a record and open a DetailActivity.
In the DetailActivity you see some information about the record and you can listen to it or substitute.
You can listen a record while the app is in foreground or in background, while you can record audio only if the RecordingActivity is in foreground.
This app supports portrait and landscape mode.
The app support the english and italian date format and strings if the system language is english or italian. if the system language is different the date time is in a generic format and the strings are in English.
The app is written in kotlin(https://kotlinlang.org/docs/home.html) and it uses material3(https://m3.material.io) for interface components. This app is compatible with android device with android 7.0 or newer(android SDK 24 or higher). The app is tested onto two devices: a device with android 9 and a device with android 13.
To allow the user to listen while the app is in background the app use a service in bound and start mode. The service is a mediaPlayback service because the notification must appeared immediatly after the user start the playback.
Vertical Screenshot MainActivity and DetailActivity in italian language and in a light background
Vertical Screenshot RecordingActivity in english language and in a light background