Can Importance.none on Android guarantee that a notification is completely hidden from the shade across all OEM skins?
0 reputation · 28 Oct 2021, 06:06 UTC
0 reputation · 28 Oct 2021, 06:06 UTC
Goal: Configure a Flutter local notification that produces no sound, vibration, or heads‑up banner while still allowing the user to see it in the notification shade if they choose.
Constraint: On Android, Importance.low suppresses auditory and visual interruptions but some OEM skins still show low‑importance notifications; Importance.none is intended to hide the notification entirely, yet its consistency across manufacturers is unclear.
Question: Does setting Importance.none on Android reliably prevent the notification from appearing in the shade on all major OEM skins (e.g., Samsung, Xiaomi, Huawei, OnePlus)? If not, what alternative configuration achieves a truly silent notification that remains accessible only through the shade?
No. Setting Importance.none (IMPORTANCE_NONE) does not provide a cross-OEM guarantee that a notification will be completely hidden from the notification shade. While stock Android typically hides these notifications, various OEM skins (such as MIUI, EMUI, and One UI) implement custom notification management layers that may still display "silent" or "minimized" notifications in a dedicated section of the shade.
The behavior of notification importance is governed by the Android Notification Channel API. Once a channel is created, its importance is immutable from the app's perspective; only the user can change it via system settings.
To achieve a notification that produces no sound, no vibration, and no heads-up banner, but remains accessible in the shade, use the following configuration:
Importance.low: This is the standard API level for notifications that should not interrupt the user but should be available for review.enableVibration(false) and no sound URI assigned.This guidance assumes the use of Android 8.0 (API level 26) or higher, where Notification Channels were introduced. Because OEM behavior varies by OS version (e.g., Android 11 vs. Android 14), physical device testing is required for each target manufacturer.
Verification Step: After triggering the notification, navigate to Settings > Apps > [Your App] > Notifications > [Channel Name]. Verify that the OS has mapped the importance to "Silent" or "Low" and check if the "Pop on screen" (heads-up) toggle is disabled.
Missing Diagnostic: To refine this recommendation, please specify the minimum Android API level your application supports, as legacy notification behavior (pre-API 26) differs significantly from the Channel-based system.
Use comments to ask for clarification. Post a solution as an answer.
No question comments on this page.