Flutter Gems is a curated list of 5500+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Android/iOS Device Software and Hardware packages
Last updated: September 20, 2023
There are various Dart & Flutter packages that provide a wide range of features for interacting with Android and iOS software and accessing underlying hardware buttons & functionalities.
Some of these features are:
- Unified package that provides consistent access to hardware and software features across both Android and iOS platforms.
- Abstractions for common hardware components like camera, sensors, GPS, microphone, and speakers, making it easy to interact with device capabilities.
- Packages that allow developers to tap into platform-specific features and optimizations while maintaining a consistent codebase.
- Packages to gather device information such as model, OS version, screen dimensions, and battery status.
- Platform-specific interface for features unique to Android and iOS, such as Android intents or iOS-specific user interface paradigms.
- Mechanisms for inter-app communication, enabling data sharing and integration between different apps.
- Packages for setting up push notifications as well as local notifications for reminders and events.
- Components that allow developers to implement platform-specific UI patterns and interactions while maintaining cross-platform compatibility.
These packages aim to simplify the development process for creating feature-rich applications on both Android and iOS platforms while abstracting away platform-specific complexities, enabling developers to focus on creating high-quality user experiences across devices. Check out the curated list of packages below:
workmanager
Dart 3 compatible π 1.59K
Maintenance Status: Good
Flutter Workmanager. This plugin allows you to schedule background work on Android and iOS.
background_fetch
Dart 3 compatible π 937
Maintenance Status: Good
Periodic callbacks in the background for both iOS and Android. Includes Android Headless implementation.
flutter_background_service
Dart 3 compatible π 916
Maintenance Status: Good
A flutter plugin for executing dart code continously even application closed.
app_settings
Dart 3 compatible π 804
Maintenance Status: Good
A Flutter plugin for opening iOS and Android phone settings from an app.
vibration
Dart 3 compatible π 546
Maintenance Status: Good
A plugin for handling Vibration API on iOS, Android, and web.
android_alarm_manager_plus
Dart 3 compatible π 396
Maintenance Status: Good
Flutter plugin for accessing the Android AlarmManager service, and running Dart code in the background when alarms fire.
flutter_foreground_task
Dart 3 compatible π 284
Maintenance Status: Good
This plugin is used to implement a foreground service on the Android platform.
back_button_interceptor
Dart 3 compatible π 271
Maintenance Status: Good
Back Button Interceptor. May be used to do stuff when the Android back-button is tapped, as an alternative to 'WillPopScope'.
flutter_background
Dart 3 compatible π 261
Maintenance Status: Good
A plugin to keep flutter apps running in the background.
flutter_callkit_incoming
Dart 3 compatible π 245
Maintenance Status: Good
Flutter Callkit Incoming to show callkit screen in your Flutter app.

safe_device
Dart 3 compatible π 189
Maintenance Status: Good
With the Flutter safe_device package, you can easily implement security steps such as Jailbroken, root, emulator and fake location detection.
shake
Dart 3 compatible π 165
Maintenance Status: Good
A flutter package to detect phone shakes. Adjustable G-force and reset periods.

alarm
Dart 3 compatible π 138
Maintenance Status: Good
A simple Flutter alarm manager plugin for both iOS and Android.
usb_serial
Dart 3 compatible π 120
Maintenance Status: Good
This plugin will allow you to easily use the USB uart hardware based on FTDI or CDC (and more!) protocols.
flutter_displaymode
Dart 3 compatible π 120
Maintenance Status: Good
A Flutter plugin to set display mode (resolution, refresh rate) on Android platform. Allows to enable high refresh rate on supported devices.
neat_periodic_task
Dart 3 compatible π 119
Maintenance Status: Good
Auxiliary classes for reliably running a periodic task in a long-running process such as web-server.
flutter_fgbg
Dart 3 compatible π 118
Maintenance Status: Good
Flutter plugin to detect when app(not Flutter container) goes to background or foreground

mobile_number
Dart 3 compatible π 86
Maintenance Status: Good
A Flutter plugin for fetching the device's mobile number or list sim cards data
screen_brightness
Dart 3 compatible π 82
Maintenance Status: Good
A Plugin for controlling screen brightness with application life cycle reset implemented
flutter_plugin_android_lifecycle
Dart 3 compatible π 82
Maintenance Status: Good
Flutter plugin for accessing an Android Lifecycle within other plugins.
android_id
Dart 3 compatible π 82
Maintenance Status: Good
A Flutter plugin for getting the Android ID. Only for Android.
google_api_availability
Dart 3 compatible π 71
Maintenance Status: Good
A Flutter plugin to check the availability of Google Play Services on an Android device.
carrier_info
Dart 3 compatible π 68
Maintenance Status: Good
Carrier Info gets networkType, networkGeneration, mobileCountryCode, mobileCountryCode, e.t.c from both android and ios devices
flutter_callkeep
Dart 3 compatible π 65
Maintenance Status: Good
iOS CallKit and Android ConnectionService bindings for Flutter
async_wallpaper
Dart 3 compatible π 60
Maintenance Status: Good
Set wallpapers on Android asynchronously. Also supports video live wallpapers. Use this, when you want to set a wallpaper on Android without a delay or blocking your whole app.
activity_recognition_flutter
Dart 3 compatible π 57
Maintenance Status: Good
Activity recognition plugin for Android and iOS. Provides event-based information about activities detected by the phone.

flutter_alarm_clock
Dart 3 compatible π 56
Maintenance Status: Good
A lightweight flutter package connecting android clock app intents.
kiosk_mode
Dart 3 compatible π 53
Maintenance Status: Good
Plugin for working with Lock Task / Guided Access modes.

phone_state
Dart 3 compatible π 51
Maintenance Status: Good
This plugin allows you to know quickly and easily if your Android or iOS device is receiving a call and to know the status of the call.
volume_controller
Dart 3 compatible π 49
Maintenance Status: Good
A Flutter volume plugin for ios and android control system volume.
appcheck
Dart 3 compatible π 49
Maintenance Status: Good
Flutter plugin that allows you to check if an app is installed/enabled, launch an app and get the list of installed apps.
ussd_advanced
Dart 3 compatible π 40
Maintenance Status: Good
Runs ussd code directly in your application, supports single session and multi session ussd calls
wallpaper
Dart 3 compatible π 38
Maintenance Status: Good
The Purpose of the plugin is to set wallpaper from url. Only supported to android. Internally using WallpaperManager to set wallpaper.

client_information
Dart 3 compatible π 38
Maintenance Status: Good
This is a plugin that lets you get the basic information from your application's client. It's easy to use and supports different platforms (Android, iOS, and Web).
torch_light
Dart 3 compatible π 37
Maintenance Status: Good
A flutter plugin to control the device torch / flashlight.
system_info2
Dart 3 compatible π 37
Maintenance Status: Good
Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).
gaimon
Dart 3 compatible π 37
Maintenance Status: Good
A Flutter plugin to fully support Haptic feedback with custom pattern.
no_screenshot
Dart 3 compatible π 35
Maintenance Status: Good
Flutter plugin to enable, disable or toggle screenshot support in your application.
esim
Dart 3 compatible π 33
Maintenance Status: Good
Flutter plugin to check eSIM compatibility.
flutter_activity_recognition
Dart 3 compatible π 28
Maintenance Status: Good
This plugin is used to recognize user activity on Android and iOS platforms.
flutter_alarm_background_trigger
Dart 3 compatible π 27
Maintenance Status: Good
A flutter plugin for Android to launch app from background at specific time just like stock alarm app in Android.
root
Dart 3 compatible π 26
Maintenance Status: Good
Flutter Plugin to check Android device Root status and Run shell commands in android(only), use this plugin only for short period of processes.
keep_screen_on
Dart 3 compatible π 22
Maintenance Status: Good
This plugin disables automatic screen off and prevents the screen from turning off.
headset_connection_event
Dart 3 compatible π 20
Maintenance Status: Good
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
flutter_foreground_service
Dart 3 compatible π 19
Maintenance Status: Good
Foreground service for the Android platform, keeps app running even when in background.
ios_utsname_ext
Dart 3 compatible π 17
Maintenance Status: Good
Extension method for translation ios utsname to full product name.
hardware_buttons_find_flutter
Dart 3 compatible π 15
Maintenance Status: Good
On mobile devices with different buttons on it, listening for the name of the button when the buttons are pressed.
huawei_hmsavailability
Dart 3 compatible π 13
Maintenance Status: Good
HUAWEI Availability Plugin for Flutter. It allows you to detect whether HMS Core apk is installed on a device.
carp_apps_package
Dart 3 compatible π 0
Maintenance Status: Good
Apps sampling package for the CARP Mobile Sensing framework (Android only).
wakelock
Dart 3 compatible π 1.36K
Maintenance Status: Average
Plugin that allows you to keep the device screen awake, i.e. prevent the screen from sleeping on Android, iOS, macOS, Windows, and web.
device_apps
Dart 3 compatible π 309
Maintenance Status: Average
List applications installed on an Android device (iOS is not supported). You can also monitor application changes (updates, uninstallationβ¦)
double_back_to_close_app
Dart 3 compatible π 303
Maintenance Status: Average
A Flutter package that allows Android users to press the back-button twice to close the app.
flutter_phone_direct_caller
Dart 3 compatible π 285
Maintenance Status: Average
Simple flutter plugin to call a number directly, without going to phone dialer, from app
flutter_ringtone_player
Dart 3 compatible π 215
Maintenance Status: Average
A simple player for system default ringtones, alarms and notifications
flutter_vibrate
Dart 3 compatible π 155
Maintenance Status: Average
A Haptic Feedback plugin.
call_log
Dart 3 compatible π 92
Maintenance Status: Average
A Flutter plugin to access and query call history log. Support for Android only as iOS does not provide API for accessing call history.
quick_usb
Dart 3 compatible π 74
Maintenance Status: Average
A cross-platform (Android/Windows/macOS/Linux) USB plugin for Flutter
disable_battery_optimization
Dart 3 compatible π 62
Maintenance Status: Average
Flutter plugin to check and disable battery optimizations. Also shows custom steps to disable the optimizations in devices like mi, xiaomi, samsung, oppo, huawei, oneplus etc
system_settings
Dart 3 compatible π 57
Maintenance Status: Average
Flutter plugin to open system and app settings on iOS and Android.
battery_info
Dart 3 compatible π 57
Maintenance Status: Average
Flutter plugin providing detailed information about the device battery (level, health, charging status, etc.). Now supports both IOS and android
disk_space
Dart 3 compatible π 56
Maintenance Status: Average
A tiny Flutter Plugin to show free and total disk space.

android_long_task
Dart 3 compatible π 52
Maintenance Status: Average
android long task is a flutter plugin to run dart code in an android foreground service with simplicity
installed_apps
Dart 3 compatible π 49
Maintenance Status: Average
Flutter plugin with utility methods related to installed apps on device.
ear
Dart 3 compatible π 42
Maintenance Status: Average
A flutter plugin project to handle all coming notification for android platform platforms.

flutter_incoming_call
Dart 3 compatible π 35
Maintenance Status: Average
A Flutter plugin to show incoming call in your Flutter app!
auto_start_flutter
Dart 3 compatible π 35
Maintenance Status: Average
The plugin redirects the user to auto-start permission screen to allow auto-start and fix background problems in some phones.
mac_address
Dart 3 compatible π 31
Maintenance Status: Average
A new Flutter plugin to get MAC Address of Android and iOS Device
usage_stats
Dart 3 compatible π 27
Maintenance Status: Average
Query Android Usage Statistics (Configurations, Events, Usage)
sound_mode
Dart 3 compatible π 27
Maintenance Status: Average
A plugin to manage a device's sound mode for android. This plugin also supports requesting the required permissions to modify the device's sound mode for Android API 24 and above.
flutter_callkit_voximplant
Dart 3 compatible π 24
Maintenance Status: Average
Flutter SDK for CallKit integration to Flutter applications on iOS
flutter_dnd
Dart 3 compatible π 23
Maintenance Status: Average
A Flutter plugin to manage Do Not Disturb settings on Android.
ringtone_set
Dart 3 compatible π 22
Maintenance Status: Average
Flutter Plugin for setting devices default ringtone or notification sound.

optimize_battery
Dart 3 compatible π 22
Maintenance Status: Average
Check for battery optimization status and open settings or disable it
serial_communication
Dart 3 compatible π 10
Maintenance Status: Average
An Android Plugin for Serial Communication which allows you to read and write the data through the available ports
flutter_headset_detector
Dart 3 compatible π 4
Maintenance Status: Average
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
carp_communication_package
Dart 3 compatible π 1
Maintenance Status: Average
CARP communication sampling package. Samples phone, sms, and calendar logs and activity.
flutter_windowmanager
Dart 3 compatible π 261
Maintenance Status: Poor
A Flutter plugin for manipulating Android WindowManager LayoutParams.
open_settings
Dart 3 compatible π 162
Maintenance Status: Poor
The most complete flutter plugin packages for open various settings screen in Android and Ios
move_to_background
Dart 3 compatible π 152
Maintenance Status: Poor
Flutter plugin for sending application to background. Send your app to the background with one line of code.
device_information
Dart 3 compatible π 84
Maintenance Status: Poor
A flutter plugin to get device information such as device IMEI number,model name,API level,CPU Type,Product Name etc for both android & iOS.
double_back_to_close
Dart 3 compatible π 57
Maintenance Status: Poor
Flutter package for request double back pressed before close app/route/screen. Wrap any widget with it to use.
ussd_service
Dart 3 compatible π 53
Maintenance Status: Poor
A Flutter plugin to make silent USSD requests and read their responses, using Android's sendUssdRequest. iOS is not supported.
flutter_foreground_plugin
Dart 3 compatible π 52
Maintenance Status: Poor
A foreground service plugin for Flutter. Support only Android (support Oreo). iOS not support yet.
flutter_voip_kit
Dart 3 compatible π 42
Maintenance Status: Poor
Use iOS CallKit and Android's Telecom library to create and receive calls with native functionality. e.g. Calls pop up on user's lock screen.
get_phone_number
Dart 3 compatible π 32
Maintenance Status: Poor
Get real phone number from device - It only works on android device and also need to run in a real device.
volume_watcher
Dart 3 compatible π 28
Maintenance Status: Poor
Support ios and android real-time return system volume value, maximum volume, initial volume, support set volume.
sim_data
Dart 3 compatible π 27
Maintenance Status: Poor
A Flutter plugin to retrieve Sim cards data - dual sim support - only Android for now.
flutter_screen_wake
Dart 3 compatible π 23
Maintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
ringtone_player
Dart 3 compatible π 21
Maintenance Status: Poor
A player for system default ringtone, alarm and notification.
volume_control
Dart 3 compatible π 19
Maintenance Status: Poor
A flutter plugin to programmatically adjust the device's volume on Android and iOS.
screen
π 121
Maintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
wallpaper_manager
π 102
Maintenance Status: Poor
A Flutter plugin for changing the Home Screen, Lock Screen (or both) Wallpaper(s) on Android devices.
flutter_appavailability
π 88
Maintenance Status: Poor
Flutter plugin that allows you to check if an app is installed/enabled, launch an app and get the list of installed apps.
imei_plugin
π 61
Maintenance Status: Poor
get real IMEI for android devices with validate permission on ejecution time and get unique id on ios An alphanumeric string that uniquely identifies a device to the appβs vendor.
flutter_phone_state
π 61
Maintenance Status: Poor
This plugin provides an easy way to make phone calls, and track the state of the phone call
foreground_service
π 51
Maintenance Status: Poor
Flutter plugin for running dart stuff via an Android foreground service. Only barely tested on Android O, and ever so slightly on M. iOS support not planned.
fullscreen
π 48
Maintenance Status: Poor
This is a flutter plugin that makes it easy to enable fullscreen in flutter application. The implements the three fullscreen modes of the android platform.
hardware_buttons
π 47
Maintenance Status: Poor
A Flutter plugin for iOS and Android for detecting various hardware buttons such as volume and home button.
flutter_android
π 39
Maintenance Status: Poor
A Flutter plugin for Android platform-specific APIs, to reduce duplication of effort by centralizing Android bindings in a single package.
system_shortcuts
π 35
Maintenance Status: Poor
ANDROID & IOS flutter plugin to use system shortcuts like pressing home, back, volume Up, volume Down keys and toggle wifi, and bluetooth as well.
torch_compat
π 32
Maintenance Status: Poor
Plugin to turn on / off the torch (or flash of the camera) on all supported versions of Android (4.1+) and iOS
flutter_incall
π 25
Maintenance Status: Poor
Flutter InCall Manager plugin for iOS/Android.
phone_state_i
π 16
Maintenance Status: Poor
Listen to Phone Call State(phone is connected/Idle) and provide call back on both iOS and andriod devices.