Skip to content

utak3r/AndroidDailyOverview

Repository files navigation

icon

Tech Stack License: Apache 2.0

Android Daily Overview

Android Daily Overview is an Android application that uses AI to process incoming SMS messages and notifications and display them in a dashboard in a form of a summary and proposed actions for calendar and/or alarms.

Screenshot01 Screenshot02

The background service is collecting incoming messages and notifications, categorizing and vectorizing them using MobileBERT into an ObjectBox database. The final summary and proposed actions for a user are generated from a dashboard using Gemma-4 E4B model, using LiteRT-LM. This split of competencies helps battery life a lot, not engaging the big brain unless necessary.

Screenshot03 Screenshot04

Features

  • Ingestion Layer: Captures data from multiple sources:

    • Real-time SMS: SmsReceiver (BroadcastReceiver) intercepts incoming SMS.
    • Real-time Notifications: NotificationListener (NotificationListenerService) captures system notifications.
    • Background SMS Sync: SmsSyncWorker performs a historical scan of SMS on application startup to ensure no missed information.
  • Processing & Intelligence Layer:

    • Categorization: MediaPipe (MobileBERT) TextClassifier assigns a category (e.g., Finance, Social).
    • Embedding: MediaPipe (MobileBERT) TextEmbedder creates vector embeddings for RAG.
    • Action Extraction: For actionable candidates (like invoices or appointments), the LiteRT-LM (Gemma-4) engine extracts structured JSON data.
    • Retention Assignment: Each message is assigned a retentionCategory based on its content (e.g., OTPs are VOLATILE, invoices are ACTION_LOCKED).
  • Persistence & Maintenance Layer:

    • ObjectBox: Stores MessageEntity and ActionDraft reactive objects.
    • Data Retention: CleanupWorker runs hourly to maintain database health:
      • Expired Data: Removes messages past their expiryTimestamp (e.g., 1 hour for VOLATILE).
      • Resolved Actions: Removes ACTION_LOCKED messages once their corresponding action is confirmed or dismissed.
  • User Interaction Layer:

    • Reactive Dashboard: Automatically displays new ActionDraft entries.
    • Action Execution: ActionManager uses system Intents to launch the Calendar or set Alarms, ensuring the user remains in control.

Overall Application Architecture

Architecture diagram

graph TB

    subgraph UI_Layer [UI Layer - Jetpack Compose]
        DS[Dashboard Screen]
        SS[Settings Screen]
        VM[Dashboard ViewModel]
    end

    subgraph Logic_Layer [Intelligence & Logic]
        DI[DataIndexer]
        LLM[LlmEngineManager - Gemma-4]
        AM[ActionManager]
        MP[MediaPipe - MobileBERT]
    end

    subgraph Service_Layer [Background Services]
        NL[NotificationListener]
        SR[SmsReceiver]
        WM[WorkManager]
        SW[SmsSyncWorker]
        CW[CleanupWorker]
    end

    subgraph Data_Layer [Data Layer]
        OB[(ObjectBox DB)]
        IDS[IntelSettings - DataStore]
    end

    subgraph Android_OS [Android System]
        SMS[SMS Provider]
        NOTIF[System Notifications]
        CAL[Calendar App]
        ALM[Alarm System]
    end

    %% Ingestion Flow
    SR --> DI
    NL --> DI
    SMS --> SW
    SW --> DI

    %% Logic Flow
    DI --> MP
    DI --> LLM
    DI --> OB
    VM -- Observes --> OB
    VM -- Triggers --> AM

    %% Maintenance Flow
    WM -- Schedules --> SW
    WM -- Schedules --> CW
    CW -- Queries & Cleans --> OB

    %% External Actions
    AM -- Intent --> CAL
    AM -- Intent --> ALM
    IDS -- Configures --> DI
    IDS -- Configures --> VM

    %% Styles for Subgraphs
    style UI_Layer fill:#ffec69,stroke:#333,stroke-width:3px
    style Logic_Layer fill:#ffec69,stroke:#333,stroke-width:3px
    style Service_Layer fill:#ffec69,stroke:#333,stroke-width:3px
    style Data_Layer fill:#ffec69,stroke:#333,stroke-width:3px
    style Android_OS fill:#81c240,stroke:#333,stroke-width:3px
Loading

About

Android Daily Overview is an Android application that uses AI to process incoming SMS messages and notifications and display them in a dashboard in a form of a summary and proposed actions for calendar and/or alarms.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages