Device & UX
Plugin.Maui.KeepAwake
Reference-counted keep-screen-on
Current NuGet 1.0.1
Keeps the screen on during scan, POS, or video with acquire / release counting. Uses FLAG_KEEP_SCREEN_ON on Android and IdleTimerDisabled on iOS — not a WakeLock.
Install
dotnet add package Plugin.Maui.KeepAwakePackage ID: Plugin.Maui.KeepAwake
Plugin.Maui.* restores from GitHub Packages. Add the org feed first — see Use nuvyntralabs GitHub Packages from a C# project.
Overview
Plugin.Maui.KeepAwake keeps the screen on for MAUI scan, POS, and video flows. Acquire() / Dispose is reference-counted so nested holds do not fight. SetEnabled(page, true) ties a hold to a page. Android uses WindowManagerFlags.KeepScreenOn, not a WAKE_LOCK. iOS sets UIApplication.SharedApplication.IdleTimerDisabled. It is not BackgroundTasks and not DeviceOrientationPlus.
Current release
- 1.0.1. Current nuget.org pack.
- 1.0.0. First stable release. Acquire / Release, page helper, IsActive / ActiveCount.
Full upgrade map for the 3 September 2026 hardening wave: Hardened plugin releases.
Capabilities
- Reference-counted Acquire / Release.
- KeepAwake.SetEnabled(page, true) for a single screen.
- IsActive and ActiveCount.
- No WakeLock permission. Not OS background work.
- .NET MAUI
- Keep awake
- Screen
- C#
Discussion
Comment on Plugin.Maui.KeepAwake. The thread lives on this component's GitHub repository (nuvyntralabs/Plugin.Maui.KeepAwake). Sign in with GitHub — Giscus uses Discussions, Utterances uses Issues.