Skip to main content

Summary

The Notification Postbox allows users to regain focus by intercepting notifications from distracting apps and delivering them in batches at scheduled times. Instead of receiving constant interruptions throughout the day, the user receives a single summary notification at their chosen times (e.g., 8:00 AM, 12:00 PM, 6:00 PM). Users can then enter a dedicated “Postbox” interface to review, dismiss, or open these notifications one by one.

How It Works

The feature works by separating the configuration (selecting apps and times) from the review experience (the Postbox interface).
1

Configuration

In the Insights screen, the user enables “Notification Batching.” They select which apps to batch (e.g., Instagram, Gmail) and set specific delivery times. The app saves these preferences in the Settings Repository.
2

Interception and Storage

When a notification arrives from a selected app, the system intercepts it. Instead of buzzing the phone immediately, the notification is saved to the local database with a flag indicating it is “batched” and currently undelivered.
3

Scheduled Delivery

At the scheduled time (e.g., 6:00 PM), the system checks the database. If there are pending notifications, it alerts the user that their “Postbox is ready.”
4

Reviewing the Postbox

The user opens the Postbox Activity. This screen first shows an overview (a visual map of apps with pending items). When the user taps an app, they enter a focused review mode.
5

Processing Items

In review mode, notifications are shown one card at a time. The user can tap Done to dismiss the notification (marking it as seen in the database) or Open to launch the specific content (e.g., a specific email) directly in the source app.

Data Stored

The feature relies on storing notification metadata locally to display them later without keeping the original system notification active.
FieldTypeDescription
notificationKeyStringUnique system key to identify the notification
packageNameStringThe ID of the app that sent the notification (e.g., com.whatsapp)
postTimeUTCLongThe timestamp when the notification originally arrived
titleStringThe bold header text of the notification
textStringThe body content of the notification
isBatchedBooleanFlag indicating this item was intercepted for the Postbox
stateIntegerStatus tracker (0=Posted, 1=Dismissed, 2=Clicked, 4=Seen)

Key Components

PostBoxActivity

The dedicated full-screen UI where users swipe through their batched notifications card-by-card.

PostBoxViewModel

Manages the queue of undelivered notifications and handles the logic for opening the original app content.

NotificationInsightsScreen

The settings interface where users toggle batching, select apps, and configure delivery schedules.

NotificationListener

A background service (referenced by the ViewModel) that physically intercepts the incoming system notifications.
Last modified on January 25, 2026