NotifyLog records device notifications and stores them locally for personal reference. The app is designed with an offline-first approach and does not transmit notification contents to external services.
- Capture incoming notifications via NotificationListenerService
- Store logs in SQLite using Room
- Search and filter the history by app and date range
- View details for each notification (title, content, timestamps, package, channel)
- Onboarding flow to request notification access
- Settings: enable/disable logging, ignore system apps, and auto-delete retention
- Application ID:
id.onyet.app.notifylog - Minimum SDK: 26
- Target SDK: 34
- Architecture: Room (Entity, DAO, Repository)
- UI: Jetpack Compose + Material3
app/src/main/java/id/onyet/app/notifylog/— application codedata/— database, repository, preferencesservice/—NotificationLogService.ktui/— screens, navigation, themeutil/— helper utilities
blueprint/— design assets and reference screens
- Open the project in Android Studio and sync Gradle.
- Or use the command line:
- Build debug APK:
./gradlew assembleDebug - Install debug APK:
adb install -r app/build/outputs/apk/debug/app-debug.apk
- Build debug APK:
- Ensure the Android SDK is configured in
local.properties(sdk.dir).
- Enable Notification Access in system settings:
Settings → Notification access → NotifyLog. - The onboarding screen provides a shortcut to the system setting.
- To test: enable notification access and generate notifications from other apps; logged notifications will appear in NotifyLog.
- App icons and drawables are available in
blueprint/icons/android/resand copied toapp/src/main/res/.
Preview images are located in assets/screenshot/.
![]() |
![]() |
![]() |
|---|---|---|
![]() |
![]() |
![]() |
Use the original files in assets/screenshot/ for high-resolution images.
- All notification data is stored locally and is not transmitted to external servers.
- Add a privacy policy before publishing to comply with Play Store requirements.
- Use the repository and DAO in
NotifyLogAppfor test data. - Consider adding unit and instrumentation tests for database and UI flows.
Dian Mukti Wibowo — onyetcorp@gmail.com
This project is licensed under the MIT License. See the LICENSE file for details.






