A simple survey app made with all the Modern Android Development tools (Flow, Jetpack ViewModel, Room, and Retrofit), and built with Modern Android App Architecture (MVVM + Uncle Bob's Clean Arch). It is also well-tested by Unit-tests, and Instrumental tests.
- Get a survey that the user can answer.
- Can answer question and answer.
- Can also view previously answered questions.
- Material Design 3 and auto dark and light mode.
- Android SDK, for building app for android platform.
- Kotlin Language
- Kotlin Coroutines, for multithreading
- Retrofit and GSON, to handle network request and network response.
- Room, for saving data locally.
- Dagger-Hilt, for dependency injection.
- Timber, for better and improved logging.
- Easy Permission, for handling permission.
- JUnit and MockK, for unit testing.
- Espresso, for instrumental and UI testing.
Clone the project
git clone https://github.com/kabirnayeem99/v2_survey_android_app.git
Go to the project directory
cd v2_survey_android_app
To make sure everything is working, first run the unit tests. Invoke gradle test:
gradlew test
And then invoke instrumental test:
gradlew connectedAndroidTest
To build a debug APK, open a command line and navigate to the root of your project directory. To initiate a debug build, invoke the assembleDebug task:
gradlew assembleDebug
This creates an APK named v2_survey_android_app-debug.apk in v2_survey_android_app/build/outputs/apk/. The file is already signed with the debug key and aligned with zipalign, so you can immediately install it on a device.
Or to build the APK and immediately install it on a running emulator or connected device, instead invoke installDebug
gradlew installDebug