-
-
Notifications
You must be signed in to change notification settings - Fork 55
Permissions Guide
Essentials requests a range of permissions depending on which features you use. All permissions are optional — the app works without any, but features will be disabled until the right permissions are granted.
These are requested via the normal Android runtime permission dialog.
| Permission | Features That Use It |
|---|---|
POST_NOTIFICATIONS |
Caffeinate (foreground service notification), Battery Notification |
BLUETOOTH_CONNECT |
Batteries widget (BT device battery), Battery Notification |
BLUETOOTH_SCAN |
Batteries widget, Battery Notification |
READ_PHONE_STATE |
Call Vibrations (detect incoming/active calls) |
READ_CALENDAR |
Calendar Sync (WearOS) |
ACCESS_FINE_LOCATION |
Location Reached (geofence alarms) |
ACCESS_BACKGROUND_LOCATION |
Location Reached (background location tracking) |
USE_FULL_SCREEN_INTENT |
Location Reached (full-screen arrival alert) |
REQUEST_INSTALL_PACKAGES |
App Updates (in-app APK installation) |
These cannot be granted via a normal dialog — they require specific steps.
Allows modifying Settings.Secure values — used for AOD, status bar icons, refresh rate mode, notification snoozing, and many more.
How to grant:
adb shell pm grant com.sameerasw.essentials android.permission.WRITE_SECURE_SETTINGSFeatures using this:
- Always on Display
- Status bar icons
- Screen refresh rate
- Lock screen clock
- Notification snoozing
- Mobile data always on
- Wireless display certification
- Network download rate limit
- Safe volume disable
- Power and Battery settings
- Quick Settings tiles (write settings)
- Shut-Up! (per-app audio ducking)
Allows modifying Settings.System values — used for Quick Settings tiles.
How to grant:
- Navigate to the feature in Essentials → tap the permission card → follow the system dialog
Features using this:
- Quick Settings tiles management
- Text and animations (font scale, animation duration)
- Shut-Up! (system audio settings)
Essentials has its own Accessibility Service (ScreenOffAccessibilityService) that powers multiple independent features.
How to grant:
- Settings → Accessibility → Installed services → Essentials → Enable
Features using this:
- Screen off widget (tap to sleep)
- Notification lighting (accessibility event listening)
- Dynamic night light (foreground app detection)
- App lock (app launch interception)
- Essentials on Display (ambient music glance)
- Smart pixels (overlay rendering)
- Button remap (key event interception)
- Pocket mode
Allows reading notification content and state — used for notification-triggered features.
How to grant:
- Settings → Notifications → Notification access → Essentials → Allow
Features using this:
- Notification lighting
- Flashlight pulse
- Call vibrations (call state detection)
- Essentials on Display
- App Freezing (app launch detection)
- Maps power saving (Maps app detection)
Allows displaying floating overlays above other apps.
How to grant:
- Settings → Apps → Special app access → Display over other apps → Essentials
Features using this:
- Notification lighting (edge lighting overlay)
Allows reading which apps are in the foreground.
How to grant:
- Settings → Digital Wellbeing (or Apps) → Special app access → Usage access → Essentials
Features using this:
- App lock (app usage detection — optional mode)
- Dynamic night light (app-based detection — optional mode)
- App Freezing
- Shut-Up!
Grants device administrator privileges.
How to grant:
- The app presents a system dialog to activate device admin
Features using this:
- Lockdown mode
These unlock the most powerful features. See Shell-Providers for setup details.
A local ADB daemon that lets Essentials execute privileged shell commands without full root.
Features using Shizuku:
- App Freezing (package state management)
- Screen Locked Security (disable QS while locked)
- Maps power saving
- Screen refresh rate (Pixel)
- Mono Audio QS tile
- Transparent navigation bar
- Standby apps management
- Prefer GPU composing
Direct su shell access — used when root is available as a more powerful alternative to Shizuku.
Features using Root (in addition to or instead of Shizuku):
- App Freezing
- Screen Locked Security
- Maps power saving
- Button remap
- Standby apps
- Prefer GPU composing
- Transparent navigation bar
- Mono Audio QS tile
- Dynamic Night Light and App Lock can use either Accessibility Service or Usage Stats — you can choose which in their settings page.
- If both Shizuku and Root are available, Root takes priority for features that support both.
- Features gracefully degrade when a permission is revoked — they show a guidance card to re-enable it.