Device hardware operations including vibration, flashlight, device info, and battery status.
The Device API provides access to device hardware features and information.
composer require nativephp/mobile-deviceuse Native\Mobile\Facades\Device;
// Vibrate the device
Device::vibrate();
// Toggle flashlight
$result = Device::toggleFlashlight();
// Returns: ['success' => true, 'state' => true|false]
// Get device ID
$result = Device::getId();
// Returns: ['id' => 'unique-device-id']
// Get device info
$result = Device::getInfo();
// Returns: ['info' => '{"name":"iPhone","model":"iPhone","platform":"ios",...}']
// Get battery info
$result = Device::getBatteryInfo();
// Returns: ['info' => '{"batteryLevel":0.85,"isCharging":false}']import { device } from '#nativephp';
// Vibrate the device
await device.vibrate();
// Toggle flashlight
const flashResult = await device.toggleFlashlight();
console.log('Flashlight state:', flashResult.state);
// Get device ID
const idResult = await device.getId();
console.log('Device ID:', idResult.id);
// Get device info
const infoResult = await device.getInfo();
const info = JSON.parse(infoResult.info);
console.log('Platform:', info.platform);
// Get battery info
const batteryResult = await device.getBatteryInfo();
const battery = JSON.parse(batteryResult.info);
console.log('Battery level:', battery.batteryLevel * 100 + '%');Vibrate the device.
Returns: { success: true }
Toggle the device flashlight on/off.
Returns: { success: boolean, state: boolean }
Get the unique device identifier.
Returns: { id: string }
- iOS: Uses
identifierForVendorUUID - Android: Uses
ANDROID_ID
Get detailed device information.
Returns: { info: string } (JSON string)
Device info includes:
name- Device namemodel- Device modelplatform- "ios" or "android"operatingSystem- OS nameosVersion- OS version stringmanufacturer- Device manufacturerisVirtual- Whether running in simulator/emulatormemUsed- Memory usage in byteswebViewVersion- WebView version
Get battery level and charging status.
Returns: { info: string } (JSON string)
Battery info includes:
batteryLevel- Battery level from 0.0 to 1.0isCharging- Whether device is charging
android.permission.VIBRATE- For vibrationandroid.permission.FLASHLIGHT- For flashlight control
No special permissions required.
MIT