AdguardTeam / AdguardTeam/AdguardForAndroid

Add Optional minimal foreground notification for Android

Open
#5,977 9 comments 6 reactions 0 assignees View on GitHub
Feature request Priority: P4 TechAudit Voting
Dominant language
No language data
Stars
1.9k
Forks
121
PR merge metrics
No merged PRs in 30d

Description

### Issue Details

AdGuard runs as a foreground VPN service, so it must show a persistent notification.
However, the current notification is large, interactive (Disable / Assistant buttons), and displays live stats. This makes it easy for users to accidentally disable filtering or interfere with the service, especially on family, managed, or non-technical user's devices.
Android does not require foreground notifications to be large or interactive — this is a UX choice.

### Proposed solution

Add an opt-in “Minimal foreground notification” mode for the VPN foreground service that uses the smallest, least intrusive notification Android allows.

The minimal notification should use:

- Dedicated NotificationChannel with IMPORTANCE_MIN
- No sound, vibration, badge, or lock-screen visibility
- setOngoing(true) (non-dismissable)
- setSilent(true) and setOnlyAlertOnce(true)
- No PendingIntent (tap does nothing)
- No action buttons, no expanded layout, no counters or stats
- Notification.CATEGORY_SERVICE

Example display:

> AdGuard — Protection active

This keeps the VPN service alive while making the notification effectively invisible and non-interactive.

This is functionally equivalent to WireGuard/Tailscale “VPN active” style notifications.

### Alternative solution

Allow disabling stats and action buttons on the existing notification, but a dedicated minimal notification channel is preferred for clean separation and correct Android behavior.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.