srwiez/nativephp-mobile-screen

Screen wake lock and brightness control for NativePHP Mobile apps

Maintainers

Package info

github.com/SRWieZ/nativephp-mobile-screen

Type:nativephp-plugin

pkg:composer/srwiez/nativephp-mobile-screen

Statistics

Installs: 270

Dependents: 0

Suggesters: 0

Stars: 7

Open Issues: 1

v1.0.0 2026-02-18 21:46 UTC

This package is auto-updated.

Last update: 2026-04-15 07:46:39 UTC


README

Keep screens awake. Control brightness. Built for apps users stare at.

Screen plugin on iOS Screen plugin on Android

A tiny, focused NativePHP plugin for two things mobile devs constantly need: keeping the screen on and controlling brightness. One facade, six methods, zero setup.

Why this plugin?

  • โ˜€๏ธ Keep the screen awake โ€” perfect for barcode tickets, live dashboards, kiosks and scoring apps.
  • ๐Ÿ”† Control brightness โ€” crank to 100% to scan barcodes in sunlight, dim down for dark reading rooms.
  • ๐Ÿชถ Dependency-free โ€” a single wake-lock + brightness wrapper. No bloat, no configuration.
  • ๐Ÿ“ฑ Works everywhere โ€” iOS 13+ and Android 5+ (API 21).

Features at a glance

Feature Android iOS
Keep screen awake โœ… โœ…
Set brightness (0.0โ€“1.0) โœ… โœ…
Reset to system default โœ… โœ…

Perfect for

Ticket & boarding-pass apps ยท Barcode / QR scanners ยท Kiosk & POS apps ยท Sports scoreboards ยท Live dashboards & monitoring ยท E-readers

Installation

# Install the package
composer require srwiez/nativephp-mobile-screen

# Publish the plugins provider (first time only)
php artisan vendor:publish --tag=nativephp-plugins-provider

# Register the plugin
php artisan native:plugin:register srwiez/nativephp-mobile-screen

# Verify registration
php artisan native:plugin:list

This adds \SRWieZ\NativePHP\Mobile\Screen\MobileScreenServiceProvider::class to your plugins() array.

Usage

PHP (Livewire/Blade)

use SRWieZ\NativePHP\Mobile\Screen\Facades\MobileScreen;

// Keep screen awake
MobileScreen::keepAwake(); // true if wake lock enabled

// Allow screen to sleep
MobileScreen::allowSleep(); // true if wake lock disabled

// Check wake lock status
$isAwake = MobileScreen::isAwake(); // bool

// Set brightness (0.0 to 1.0)
$level = MobileScreen::setBrightness(1.0); // returns actual level, or false on failure

// Get current brightness
$level = MobileScreen::getBrightness(); // float or null

// Reset to system default
MobileScreen::resetBrightness(); // returns level or false on failure

JavaScript (Vue/React/Inertia)

import { mobileScreen } from '@srwiez/nativephp-mobile-screen';

// Keep screen awake
await mobileScreen.keepAwake();

// Set maximum brightness
await mobileScreen.setBrightness(1.0);

// Reset when done
await mobileScreen.resetBrightness();
await mobileScreen.allowSleep();

API Reference

Method Returns Description
keepAwake(bool $enabled = true) bool Enable/disable screen wake lock
allowSleep() bool Alias for keepAwake(false)
isAwake() bool Check if wake lock is active
setBrightness(float $level) bool|float Set brightness (0.0-1.0). Returns actual level or false on failure
getBrightness() ?float Get current brightness level
resetBrightness() bool|float Reset to system default. Returns level or false on failure

Version Support

Platform Minimum Version
Android 5.0 (API 21)
iOS 13.0

More NativePHP Mobile plugins

Building a mobile app with NativePHP? Check out the rest of the suite:

  • Calendar โ€” Native calendars & events from PHP, on both platforms.
  • Contacts โ€” Read, create & sync the device address book straight from Laravel.
  • Screenshots โ€” Lock down sensitive screens, catch capture attempts, respond instantly.

Support

Bugs, questions, and feature requests should be reported at github.com/SRWieZ/nativephp-mobile-screen/issues.