Flutter Gems is a curated list of 6700+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Android/iOS Device Software and Hardware packages
Last updated: June 22, 2025
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:
flutter_plugin_android_lifecycle
👍 108 ⬇️ 3.3M
Dart 3 compatibleMaintenance Status: Good
Flutter plugin for accessing an Android Lifecycle within other plugins.
workmanager
👍 2.26K ⬇️ 62.9K
Dart 3 compatibleMaintenance Status: Good
Flutter Workmanager. This plugin allows you to schedule background work on Android and iOS.
app_settings
👍 1.16K ⬇️ 662.7K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin for opening iOS and Android phone settings from an app.
flutter_background_service
👍 1.5K ⬇️ 67.4K
Dart 3 compatibleMaintenance Status: Good
A flutter plugin for executing dart code continously even application closed.
background_fetch
👍 1.22K ⬇️ 51.6K
Dart 3 compatibleMaintenance Status: Good
Periodic callbacks in the background for both iOS and Android. Includes Android Headless implementation.
system_info2
👍 62 ⬇️ 1.3M
Dart 3 compatibleMaintenance Status: Poor
Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).
vibration
👍 850 ⬇️ 268.5K
Dart 3 compatibleMaintenance Status: Good
A plugin for handling Vibration API on iOS, Android, web and OpenHarmony.
back_button_interceptor
👍 393 ⬇️ 361.2K
Dart 3 compatibleMaintenance Status: Good
Back Button Interceptor. May be used to do stuff when the Android back-button is tapped, as an alternative to 'WillPopScope'.
android_alarm_manager_plus
👍 570 ⬇️ 9.3K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin for accessing the Android AlarmManager service, and running Dart code in the background when alarms fire.
flutter_foreground_task
👍 517 ⬇️ 36.4K
Dart 3 compatibleMaintenance Status: Good
This plugin is used to implement a foreground service on the Android platform.
flutter_callkit_incoming
👍 442 ⬇️ 32.6K
Dart 3 compatibleMaintenance Status: Good
Flutter Callkit Incoming to show callkit screen in your Flutter app.

safe_device
👍 327 ⬇️ 131.5K
Dart 3 compatibleMaintenance Status: Good
With the Flutter safe_device package, you can easily implement security steps such as Jailbroken, root, emulator and fake location detection.
process_runner
👍 22 ⬇️ 497.4K
Dart 3 compatibleMaintenance Status: Average
A process invocation abstraction for Dart that manages a multi-process queue.
flutter_phone_direct_caller
👍 366 ⬇️ 19.2K
Dart 3 compatibleMaintenance Status: Good
Simple flutter plugin to call a number directly, without going to phone dialer, from app
flutter_windowmanager
👍 357 ⬇️ 21.7K
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin for manipulating Android WindowManager LayoutParams.
android_id
👍 134 ⬇️ 266.1K
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin for getting the Android ID. Only for Android.
double_back_to_close_app
👍 334 ⬇️ 2.5K
Dart 3 compatibleMaintenance Status: Poor
A Flutter package that allows Android users to press the back-button twice to close the app.
flutter_background
👍 329 ⬇️ 1.6K
Dart 3 compatibleMaintenance Status: Good
Run apps in the background using foreground services on Android. Ideal for applications that require continuous operation, such as background data synchronization or messaging.

alarm
👍 315 ⬇️ 4K
Dart 3 compatibleMaintenance Status: Good
A simple Flutter alarm manager plugin for both iOS and Android.
flutter_ringtone_player
👍 281 ⬇️ 4.1K
Dart 3 compatibleMaintenance Status: Good
A simple player for system default ringtones, alarms and notifications
flutter_fgbg
👍 169 ⬇️ 91.9K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin to detect when app(not Flutter container) goes to background or foreground
flutter_displaymode
👍 199 ⬇️ 34.4K
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin to set display mode (resolution, refresh rate) on Android platform. Allows to enable high refresh rate on supported devices.
shake
👍 205 ⬇️ 25.9K
Dart 3 compatibleMaintenance Status: Good
A flutter package to detect phone shakes. Adjustable G-force and reset periods.
flutter_vibrate
👍 193 ⬇️ 40K
Dart 3 compatibleMaintenance Status: Poor
A Haptic Feedback plugin.
screen_brightness
👍 141 ⬇️ 105.6K
Dart 3 compatibleMaintenance Status: Good
A Plugin for controlling screen brightness with application life cycle reset implemented
open_settings
👍 204 ⬇️ 21.5K
Dart 3 compatibleMaintenance Status: Poor
The most complete flutter plugin packages for open various settings screen in Android and Ios
no_screenshot
👍 181 ⬇️ 38.8K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin to enable, disable, toggle or stream screenshot activities in your application.
google_api_availability
👍 98 ⬇️ 140K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to check the availability of Google Play Services on an Android device.
volume_controller
👍 106 ⬇️ 126.9K
Dart 3 compatibleMaintenance Status: Good
A Flutter volume plugin for multiple platform to control system volume.
usb_serial
👍 187 ⬇️ 5K
Dart 3 compatibleMaintenance Status: Good
This plugin will allow you to easily use the USB uart hardware based on FTDI or CDC (and more!) protocols.
move_to_background
👍 175 ⬇️ 6.8K
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin for sending application to background. Send your app to the background with one line of code.
neat_periodic_task
👍 156 ⬇️ 8.3K
Dart 3 compatibleMaintenance Status: Poor
Auxiliary classes for reliably running a periodic task in a long-running process such as web-server.
installed_apps
👍 122 ⬇️ 22.4K
Dart 3 compatibleMaintenance Status: Good
Flutter plugin with utility methods related to installed apps on device.

phone_state
👍 127 ⬇️ 13.8K
Dart 3 compatibleMaintenance 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.
open_settings_plus
👍 83 ⬇️ 48.4K
Dart 3 compatibleMaintenance Status: Good
The most complete flutter plugin packages for open various settings screen, covering newer versions of ios and android.
gaimon
👍 100 ⬇️ 25.7K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to fully support Haptic feedback with custom pattern.
appcheck
👍 100 ⬇️ 25.2K
Dart 3 compatibleMaintenance 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.
device_information
👍 113 ⬇️ 4.8K
Dart 3 compatibleMaintenance 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.
disable_battery_optimization
👍 112 ⬇️ 6K
Dart 3 compatibleMaintenance 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
call_log
👍 110 ⬇️ 3.7K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to access and query call history log. Support for Android only as iOS does not provide API for accessing call history.

mobile_number
👍 110 ⬇️ 3K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin for fetching the device's mobile number or list sim cards data
quick_usb
👍 106 ⬇️ 84
Dart 3 compatibleMaintenance Status: Poor
A cross-platform (Android/Windows/macOS/Linux) USB plugin for Flutter
haptic_feedback
👍 100 ⬇️ 3.2K
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin for haptic feedback. While it utilizes standard iOS haptics, it aims to emulate these same haptic patterns on Android for a consistent experience across platforms.
kiosk_mode
👍 98 ⬇️ 2.6K
Dart 3 compatibleMaintenance Status: Good
Plugin for working with Lock Task / Guided Access modes.
libphonenumber_plugin
👍 14 ⬇️ 102.7K
Dart 3 compatibleMaintenance Status: Average
Flutter package for Google libphonenumber, for Android and Web. Uses Flutter Federated Package for interoperability.
carrier_info
👍 80 ⬇️ 6.2K
Dart 3 compatibleMaintenance Status: Poor
Carrier Info gets networkType, networkGeneration, mobileCountryCode, mobileCountryCode, e.t.c from both android and ios devices
flutter_callkeep
👍 84 ⬇️ 447
Dart 3 compatibleMaintenance Status: Good
iOS CallKit and Android ConnectionService bindings for Flutter
async_wallpaper
👍 84 ⬇️ 406
Dart 3 compatibleMaintenance 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.
dlibphonenumber
👍 43 ⬇️ 49.3K
Dart 3 compatibleMaintenance Status: Good
A Dart package for working with international phone numbers based on Google's libphonenumber implementation.
battery_info
👍 74 ⬇️ 2.3K
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin providing detailed information about the device battery (level, health, charging status, etc.). Now supports both IOS and android

flutter_alarm_clock
👍 74 ⬇️ 770
Dart 3 compatibleMaintenance Status: Good
A lightweight flutter package connecting android clock app intents.
torch_light
👍 55 ⬇️ 24.7K
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to check if the device has a torch / flashlight, and to turn it on and off.
disk_space
👍 62 ⬇️ 10K
Dart 3 compatibleMaintenance Status: Poor
A tiny Flutter Plugin to show free and total disk space.
jailbreak_root_detection
👍 48 ⬇️ 27.7K
Dart 3 compatibleMaintenance Status: Good
Uses RootBeer + DetectFrida for Android root detection and IOSSecuritySuite for iOS jailbreak detection.
system_settings
👍 67 ⬇️ 1.9K
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin to open system and app settings on iOS and Android.
double_back_to_close
👍 65 ⬇️ 734
Dart 3 compatibleMaintenance Status: Poor
Flutter package for request double back pressed before close app/route/screen. Wrap any widget with it to use.
auto_start_flutter
👍 64 ⬇️ 879
Dart 3 compatibleMaintenance Status: Good
The plugin redirects the user to auto-start permission screen to allow auto-start and fix background problems in some phones.
activity_recognition_flutter
👍 62 ⬇️ 293
Dart 3 compatibleMaintenance Status: Average
Activity recognition plugin for Android and iOS. Provides event-based information about activities detected by the phone.
ussd_service
👍 62 ⬇️ 95
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin to make silent USSD requests and read their responses, using Android's sendUssdRequest. iOS is not supported.
ussd_advanced
👍 61 ⬇️ 423
Dart 3 compatibleMaintenance Status: Poor
Runs ussd code directly in your application, supports single session and multi session ussd calls
keep_screen_on
👍 49 ⬇️ 12.6K
Dart 3 compatibleMaintenance Status: Good
This plugin disables automatic screen off and prevents the screen from turning off.
android_long_task
👍 58 ⬇️ 54
Dart 3 compatibleMaintenance Status: Poor
android long task is a flutter plugin to run dart code in an android foreground service with simplicity

client_information
👍 52 ⬇️ 6.2K
Dart 3 compatibleMaintenance 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).
flutter_activity_recognition
👍 52 ⬇️ 4.5K
Dart 3 compatibleMaintenance Status: Good
This plugin is used to recognize user activity on Android and iOS platforms.
sound_mode
👍 45 ⬇️ 11.5K
Dart 3 compatibleMaintenance Status: Good
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_foreground_plugin
👍 52 ⬇️ 62
Dart 3 compatibleMaintenance Status: Poor
A foreground service plugin for Flutter. Support only Android (support Oreo). iOS not support yet.
wallpaper
👍 50 ⬇️ 277
Dart 3 compatibleMaintenance Status: Good
The Purpose of the plugin is to set wallpaper from url. Only supported to android. Internally using WallpaperManager to set wallpaper.
ios_utsname_ext
👍 23 ⬇️ 30.8K
Dart 3 compatibleMaintenance Status: Average
Extension method for translation ios utsname to full product name.
apple_product_name
👍 27 ⬇️ 24.4K
Dart 3 compatibleMaintenance Status: Good
Library for translating Apple machine identifiers into Apple product names (e.g. 'iPhone17,1' to 'iPhone 16 Pro')

pencil_kit
👍 44 ⬇️ 393
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin that provides a iOS PencilKit widget on iOS.

flutter_incoming_call
👍 44 ⬇️ 50
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin to show incoming call in your Flutter app!
flutter_alarm_background_trigger
👍 44 ⬇️ 44
Dart 3 compatibleMaintenance Status: Average
A flutter plugin for Android to launch app from background at specific time just like stock alarm app in Android.
flutter_voip_kit
👍 43 ⬇️ 35
Dart 3 compatibleMaintenance 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.
mac_address
👍 42 ⬇️ 556
Dart 3 compatibleMaintenance Status: Poor
A new Flutter plugin to get MAC Address of Android and iOS Device
ear
👍 42 ⬇️ 31
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin project to handle all coming notification for android platform platforms.
get_phone_number
👍 39 ⬇️ 1.3K
Dart 3 compatibleMaintenance Status: Good
Get real phone number from device - It only works on android device and also need to run in a real device.
usage_stats
👍 39 ⬇️ 1.2K
Dart 3 compatibleMaintenance Status: Good
Query Android Usage Statistics (Configurations, Events, Usage)
managed_configurations
👍 18 ⬇️ 28.4K
Dart 3 compatibleMaintenance Status: Good
Plugin to support managed app configuration provided by a Mobile device management (MDM).
volume_watcher
👍 38 ⬇️ 1.6K
Dart 3 compatibleMaintenance Status: Poor
Support ios and android real-time return system volume value, maximum volume, initial volume, support set volume.
esim
👍 38 ⬇️ 108
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin to check eSIM compatibility.
flutter_foreground_service
👍 36 ⬇️ 558
Dart 3 compatibleMaintenance Status: Average
Foreground service for the Android platform, keeps app running even when in background.
optimize_battery
👍 35 ⬇️ 844
Dart 3 compatibleMaintenance Status: Poor
Check for battery optimization status and open settings or disable it
root
👍 35 ⬇️ 697
Dart 3 compatibleMaintenance Status: Poor
Flutter Plugin to check Android device Root status and Run shell commands in android(only), use this plugin only for short period of processes.
sim_data
👍 33 ⬇️ 507
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin to retrieve Sim cards data - dual sim support - only Android for now.
flutter_wallpaper_manager
👍 33 ⬇️ 393
Dart 3 compatibleMaintenance Status: Average
Flutter wallpaper manager plugin, helps you setup wallpaper on android devices. Support home screen, lock screen and both screen wallpaper mode.
flutter_screen_wake
👍 31 ⬇️ 2.3K
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
device_installed_apps
👍 31 ⬇️ 503
Dart 3 compatibleMaintenance Status: Average
Plugin for Flutter with methods related to device installed apps.
background_task
👍 31 ⬇️ 18
Dart 3 compatibleMaintenance Status: Good
Can be processed using location updates after the application transitions to the background.
torch_controller
👍 26 ⬇️ 5.7K
Dart 3 compatibleMaintenance Status: Poor
A controller to manage torch/flash device resource. We give you access to native resources to toggle flashlight, to natively check torch status and more!
headset_connection_event
👍 28 ⬇️ 1.8K
Dart 3 compatibleMaintenance Status: Good
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
flutter_background_executor
👍 27 ⬇️ 475
Dart 3 compatibleMaintenance Status: Poor
This plugin is created for background tasks. It supports scheduled refresh task and immediate background task.
flutter_dnd
👍 27 ⬇️ 8
Dart 3 compatibleMaintenance Status: Poor
A Flutter plugin to manage Do Not Disturb settings on Android.
flutter_callkit_voximplant
👍 26 ⬇️ 280
Dart 3 compatibleMaintenance Status: Poor
Flutter SDK for CallKit integration to Flutter applications on iOS
phone_state_background
👍 26 ⬇️ 188
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to handle Phone Call State and execute a Dart callback in background.
hardware_buttons_find_flutter
👍 24 ⬇️ 77
Dart 3 compatibleMaintenance Status: Poor
On mobile devices with different buttons on it, listening for the name of the button when the buttons are pressed.
ringtone_set
👍 23 ⬇️ 55
Dart 3 compatibleMaintenance Status: Poor
Flutter Plugin for setting devices default ringtone or notification sound.
device_imei
👍 23 ⬇️ 48
Dart 3 compatibleMaintenance Status: Average
Flutter plugins to get real IMEI for Mobile Device
ringtone_player
👍 22 ⬇️ 496
Dart 3 compatibleMaintenance Status: Poor
A player for system default ringtone, alarm and notification.
volume_control
👍 21 ⬇️ 526
Dart 3 compatibleMaintenance Status: Poor
A flutter plugin to programmatically adjust the device's volume on Android and iOS.
flutter_root_detection
👍 20 ⬇️ 49
Dart 3 compatibleMaintenance Status: Poor
Flutter Root Detection for Both Android and IOS which does not run the application on root or sudo
root_access
👍 19 ⬇️ 552
Dart 3 compatibleMaintenance Status: Poor
Flutter plugin to request root access in Android device. This plugin is Android exclusive only.
is_pirated
👍 19 ⬇️ 30
Dart 3 compatibleMaintenance Status: Poor
Check and handle if your app is installed from an unauthorized source. Provides tolling to auto terminate app & open store listing
root_tester
👍 18 ⬇️ 192
Dart 3 compatibleMaintenance Status: Average
A Flutter plugin to check if device is rooted or not.only for Android & iOS Devices.
huawei_hmsavailability
👍 16 ⬇️ 2
Dart 3 compatibleMaintenance Status: Average
HUAWEI Availability Plugin for Flutter. It allows you to detect whether HMS Core apk is installed on a device.
serial_communication
👍 14 ⬇️ 58
Dart 3 compatibleMaintenance Status: Poor
An Android Plugin for Serial Communication which allows you to read and write the data through the available ports
flutter_headset_detector
👍 5 ⬇️ 606
Dart 3 compatibleMaintenance Status: Good
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
device_call_checker
👍 5 ⬇️ 44
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to check if the device is in a call (normal or VoIP call).
flutter_cell_info
👍 3 ⬇️ 41
Dart 3 compatibleMaintenance Status: Average
Lightweight library that is build over Telephony SDK. NetMonster core is extracted from NetMonster application and backports several Telephony features to older Android devices.
simcards
👍 3 ⬇️ 31
Dart 3 compatibleMaintenance Status: Average
A Flutter Plugin for querying active Device SimCards
brightness_volume_manager
👍 1 ⬇️ 42
Dart 3 compatibleMaintenance Status: Good
A Flutter plugin to manage screen brightness and volume on Android and iOS. Also provides the custom widget for brightness and volume swipe.

phone_state_handler
👍 1 ⬇️ 35
Dart 3 compatibleMaintenance 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.
carp_apps_package
👍 0 ⬇️ 227
Dart 3 compatibleMaintenance Status: Good
Apps sampling package for the CARP Mobile Sensing framework (Android only).
screen
👍 121 ⬇️ 230
Maintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
wallpaper_manager
👍 103 ⬇️ 34
Maintenance Status: Poor
A Flutter plugin for changing the Home Screen, Lock Screen (or both) Wallpaper(s) on Android devices.
flutter_appavailability
👍 91 ⬇️ 36
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.
flutter_phone_state
👍 62 ⬇️ 34
Maintenance Status: Poor
This plugin provides an easy way to make phone calls, and track the state of the phone call
imei_plugin
👍 61 ⬇️ 150
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.
foreground_service
👍 52 ⬇️ 13
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.
hardware_buttons
👍 49 ⬇️ 26
Maintenance Status: Poor
A Flutter plugin for iOS and Android for detecting various hardware buttons such as volume and home button.
fullscreen
👍 48 ⬇️ 245
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.
flutter_android
👍 40 ⬇️ 124
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 ⬇️ 63
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.
flutter_incall
👍 25 ⬇️ 18
Maintenance Status: Poor
Flutter InCall Manager plugin for iOS/Android.
phone_state_i
👍 16 ⬇️ 21
Maintenance Status: Poor
Listen to Phone Call State(phone is connected/Idle) and provide call back on both iOS and andriod devices.
carp_communication_package
👍 1 ⬇️ 295
Maintenance Status: Good
CARP communication sampling package. Samples phone, sms, and calendar logs and activity.