Android client app for notes-api with user authentication
- Signing in if user exists or creating new user.
- The server generates a unique token for user signed in and stores it in shared preferences for making network calls.
- If user exists the app will retrieve notes from the server if there exists any using a Retrival Worker.
- Another Periodic Sync Worker works in backend to sync the notes to server if network is connected.
- The user can manually sync also.
- When signed out the app clears the all notes from database as well as token in shared preferences.
NotesApiAndroidAppDemo.mp4
- Material 3
- Navigation Component
- Kotlin coroutines
- Jetpack Datastore
- Lifecycle (ViewModel + LiveData)
- Dagger Hilt
- Work Managers
- Broadcast Receivers
- Splash Screen Api
- Ktor Client with okhttp
- Content Negotiation
- Kotlin serialization
- Client Logging.
Authentication usage example -
- Server for usage com.darkndev.ktor-auth
- Client Android app for usage KtorAuth
Server for usage com.darkndev.notes-api-alt