app_settings_checker 1.0.3
app_settings_checker: ^1.0.3 copied to clipboard
A Flutter plugin for check permissions and opening settings from an app. By PT. Nicxon International Solutions
App Settings Checker #
A Flutter plugin to check common device settings and open system settings menus.
By PT. Nicxon International Solutions
π Table of Contents #
π Installation #
Add the plugin to your project:
flutter pub add app_settings_checker
π± Platform Setup #
Android #
Required Permissions
Add the necessary permissions to your AndroidManifest.xml
based on your usage:
π Battery Optimizations
<uses-permission android:name="android.permission.REQUEST_IGNORE_BATTERY_OPTIMIZATIONS" />
π Location Access
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
π Device ID (for Build.SERIAL
on Android < 10)
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
iOS #
π Location Services
Add the following key(s) to your Info.plist
to request location permission from the user:
<key>NSLocationWhenInUseUsageDescription</key>
<string>Need location access to check GPS settings.</string>
You can also add NSLocationAlwaysUsageDescription
if your app requires background location.
π Device ID
iOS does not allow permanent device IDs like Androidβs
ANDROID_ID
.
The plugin usesidentifierForVendor
, which resets on uninstall/reinstall.
π§© Usage #
Import the package:
import 'package:app_settings_checker/app_settings_checker.dart';
Open App Settings #
AppSettingsChecker.openAppSettings();
Location Settings #
Check if location is enabled:
final isEnabled = await AppSettingsChecker.isLocationEnabled();
Open location settings (note: on iOS, this opens the app's settings page, not system location settings):
AppSettingsChecker.openLocationSettings();
Notification Settings #
Check if notifications are enabled:
final isEnabled = await AppSettingsChecker.areNotificationsEnabled();
Open notification settings:
AppSettingsChecker.openNotificationSettings();
Battery Optimization Settings #
Check if battery optimization is disabled (Android only, not applicable on iOS):
final isDisabled = await AppSettingsChecker.isBatteryOptimizationDisabled();
Open battery optimization settings:
AppSettingsChecker.openBatteryOptimizationSettings();
App Info & Device Details #
Get app version:
final version = await AppSettingsChecker.getAppVersion();
Get phone model:
final model = await AppSettingsChecker.getPhoneModel();
Get device ID:
final deviceId = await AppSettingsChecker.getDeviceId();
Get Platform Version
await AppSettingsChecker.getPlatformVersion();