Flutter Gems is a curated list of 6000+ useful Dart & Flutter packages that are categorized based on functionality.
Top Flutter Android/iOS Device Software and Hardware packages
Last updated: December 4, 2024
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_background_service
Dart 3 compatible 👍 1.38K
Maintenance Status: Good
A flutter plugin for executing dart code continously even application closed.
background_fetch
Dart 3 compatible 👍 1.17K
Maintenance Status: Good
Periodic callbacks in the background for both iOS and Android. Includes Android Headless implementation.
vibration
Dart 3 compatible 👍 774
Maintenance Status: Good
A plugin for handling Vibration API on iOS, Android, web and OpenHarmony.
android_alarm_manager_plus
Dart 3 compatible 👍 522
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 👍 445
Maintenance Status: Good
This plugin is used to implement a foreground service on the Android platform.
flutter_callkit_incoming
Dart 3 compatible 👍 394
Maintenance Status: Good
Flutter Callkit Incoming to show callkit screen in your Flutter app.
back_button_interceptor
Dart 3 compatible 👍 357
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 👍 315
Maintenance 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.
safe_device
Dart 3 compatible 👍 276
Maintenance Status: Good
With the Flutter safe_device package, you can easily implement security steps such as Jailbroken, root, emulator and fake location detection.
alarm
Dart 3 compatible 👍 269
Maintenance Status: Good
A simple Flutter alarm manager plugin for both iOS and Android.
flutter_ringtone_player
Dart 3 compatible 👍 266
Maintenance Status: Good
A simple player for system default ringtones, alarms and notifications
usb_serial
Dart 3 compatible 👍 166
Maintenance Status: Good
This plugin will allow you to easily use the USB uart hardware based on FTDI or CDC (and more!) protocols.
flutter_fgbg
Dart 3 compatible 👍 159
Maintenance Status: Good
Flutter plugin to detect when app(not Flutter container) goes to background or foreground
no_screenshot
Dart 3 compatible 👍 128
Maintenance Status: Good
Flutter plugin to enable, disable, toggle or stream screenshot activities in your application.
android_id
Dart 3 compatible 👍 120
Maintenance Status: Good
A Flutter plugin for getting the Android ID. Only for Android.
screen_brightness
Dart 3 compatible 👍 119
Maintenance Status: Good
A Plugin for controlling screen brightness with application life cycle reset implemented
phone_state
Dart 3 compatible 👍 105
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.
flutter_plugin_android_lifecycle
Dart 3 compatible 👍 101
Maintenance Status: Good
Flutter plugin for accessing an Android Lifecycle within other plugins.
installed_apps
Dart 3 compatible 👍 92
Maintenance Status: Good
Flutter plugin with utility methods related to installed apps on device.
appcheck
Dart 3 compatible 👍 92
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.
kiosk_mode
Dart 3 compatible 👍 86
Maintenance Status: Good
Plugin for working with Lock Task / Guided Access modes.
volume_controller
Dart 3 compatible 👍 84
Maintenance Status: Good
A Flutter volume plugin for ios and android control system volume.
flutter_callkeep
Dart 3 compatible 👍 81
Maintenance Status: Good
iOS CallKit and Android ConnectionService bindings for Flutter
gaimon
Dart 3 compatible 👍 78
Maintenance Status: Good
A Flutter plugin to fully support Haptic feedback with custom pattern.
async_wallpaper
Dart 3 compatible 👍 76
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.
haptic_feedback
Dart 3 compatible 👍 72
Maintenance Status: Good
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.
open_settings_plus
Dart 3 compatible 👍 61
Maintenance Status: Good
The most complete flutter plugin packages for open various settings screen, covering newer versions of ios and android.
torch_light
Dart 3 compatible 👍 55
Maintenance Status: Good
A Flutter plugin to check if the device has a torch / flashlight, and to turn it on and off.
flutter_activity_recognition
Dart 3 compatible 👍 52
Maintenance Status: Good
This plugin is used to recognize user activity on Android and iOS platforms.
wallpaper
Dart 3 compatible 👍 48
Maintenance Status: Good
The Purpose of the plugin is to set wallpaper from url. Only supported to android. Internally using WallpaperManager to set wallpaper.
flutter_incoming_call
Dart 3 compatible 👍 44
Maintenance Status: Good
A Flutter plugin to show incoming call in your Flutter app!
sound_mode
Dart 3 compatible 👍 42
Maintenance 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.
get_phone_number
Dart 3 compatible 👍 37
Maintenance Status: Good
Get real phone number from device - It only works on android device and also need to run in a real device.
pencil_kit
Dart 3 compatible 👍 35
Maintenance Status: Good
A Flutter plugin that provides a iOS PencilKit widget on iOS.
user_messaging_platform
Dart 3 compatible 👍 30
Maintenance Status: Good
A plugin which provides a Dart API for the User Messaging Platform (UMP) SDK, which is the Consent Management Platform (CMP) SDK provided as part of Google's Funding Choices.
huawei_hmsavailability
Dart 3 compatible 👍 16
Maintenance Status: Good
HUAWEI Availability Plugin for Flutter. It allows you to detect whether HMS Core apk is installed on a device.
flutter_headset_detector
Dart 3 compatible 👍 4
Maintenance Status: Good
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
phone_state_handler
Dart 3 compatible 👍 1
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.
carp_communication_package
Dart 3 compatible 👍 1
Maintenance Status: Good
CARP communication sampling package. Samples phone, sms, and calendar logs and activity.
carp_apps_package
Dart 3 compatible 👍 0
Maintenance Status: Good
Apps sampling package for the CARP Mobile Sensing framework (Android only).
workmanager
Dart 3 compatible 👍 2.1K
Maintenance Status: Average
Flutter Workmanager. This plugin allows you to schedule background work on Android and iOS.
app_settings
Dart 3 compatible 👍 1.07K
Maintenance Status: Average
A Flutter plugin for opening iOS and Android phone settings from an app.
shake
Dart 3 compatible 👍 200
Maintenance Status: Average
A flutter package to detect phone shakes. Adjustable G-force and reset periods.
flutter_displaymode
Dart 3 compatible 👍 175
Maintenance Status: Average
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 👍 152
Maintenance Status: Average
Auxiliary classes for reliably running a periodic task in a long-running process such as web-server.
disable_battery_optimization
Dart 3 compatible 👍 99
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
google_api_availability
Dart 3 compatible 👍 88
Maintenance Status: Average
A Flutter plugin to check the availability of Google Play Services on an Android device.
carrier_info
Dart 3 compatible 👍 78
Maintenance Status: Average
Carrier Info gets networkType, networkGeneration, mobileCountryCode, mobileCountryCode, e.t.c from both android and ios devices
flutter_alarm_clock
Dart 3 compatible 👍 70
Maintenance Status: Average
A lightweight flutter package connecting android clock app intents.
activity_recognition_flutter
Dart 3 compatible 👍 61
Maintenance Status: Average
Activity recognition plugin for Android and iOS. Provides event-based information about activities detected by the phone.
ussd_advanced
Dart 3 compatible 👍 58
Maintenance Status: Average
Runs ussd code directly in your application, supports single session and multi session ussd calls
system_info2
Dart 3 compatible 👍 57
Maintenance Status: Average
Provides easy access to useful information about the system (architecture, bitness, kernel, memory, operating system, CPU, user).
client_information
Dart 3 compatible 👍 52
Maintenance Status: Average
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_alarm_background_trigger
Dart 3 compatible 👍 43
Maintenance Status: Average
A flutter plugin for Android to launch app from background at specific time just like stock alarm app in Android.
keep_screen_on
Dart 3 compatible 👍 42
Maintenance Status: Average
This plugin disables automatic screen off and prevents the screen from turning off.
esim
Dart 3 compatible 👍 37
Maintenance Status: Average
Flutter plugin to check eSIM compatibility.
flutter_foreground_service
Dart 3 compatible 👍 31
Maintenance Status: Average
Foreground service for the Android platform, keeps app running even when in background.
flutter_wallpaper_manager
Dart 3 compatible 👍 30
Maintenance Status: Average
Flutter wallpaper manager plugin, helps you setup wallpaper on android devices. Support home screen, lock screen and both screen wallpaper mode.
headset_connection_event
Dart 3 compatible 👍 25
Maintenance Status: Average
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
ios_utsname_ext
Dart 3 compatible 👍 23
Maintenance Status: Average
Extension method for translation ios utsname to full product name.
hardware_buttons_find_flutter
Dart 3 compatible 👍 23
Maintenance Status: Average
On mobile devices with different buttons on it, listening for the name of the button when the buttons are pressed.
simcards
Dart 3 compatible 👍 3
Maintenance Status: Average
A Flutter Plugin for querying active Device SimCards
flutter_cell_info
Dart 3 compatible 👍 2
Maintenance 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.
flutter_phone_direct_caller
Dart 3 compatible 👍 353
Maintenance Status: Poor
Simple flutter plugin to call a number directly, without going to phone dialer, from app
flutter_windowmanager
Dart 3 compatible 👍 337
Maintenance Status: Poor
A Flutter plugin for manipulating Android WindowManager LayoutParams.
double_back_to_close_app
Dart 3 compatible 👍 329
Maintenance Status: Poor
A Flutter package that allows Android users to press the back-button twice to close the app.
open_settings
Dart 3 compatible 👍 199
Maintenance Status: Poor
The most complete flutter plugin packages for open various settings screen in Android and Ios
flutter_vibrate
Dart 3 compatible 👍 189
Maintenance Status: Poor
A Haptic Feedback plugin.
move_to_background
Dart 3 compatible 👍 171
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 👍 105
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.
mobile_number
Dart 3 compatible 👍 104
Maintenance Status: Poor
A Flutter plugin for fetching the device's mobile number or list sim cards data
call_log
Dart 3 compatible 👍 102
Maintenance Status: Poor
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 👍 99
Maintenance Status: Poor
A cross-platform (Android/Windows/macOS/Linux) USB plugin for Flutter
battery_info
Dart 3 compatible 👍 74
Maintenance Status: Poor
Flutter plugin providing detailed information about the device battery (level, health, charging status, etc.). Now supports both IOS and android
system_settings
Dart 3 compatible 👍 66
Maintenance Status: Poor
Flutter plugin to open system and app settings on iOS and Android.
double_back_to_close
Dart 3 compatible 👍 63
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 👍 61
Maintenance Status: Poor
A Flutter plugin to make silent USSD requests and read their responses, using Android's sendUssdRequest. iOS is not supported.
disk_space
Dart 3 compatible 👍 61
Maintenance Status: Poor
A tiny Flutter Plugin to show free and total disk space.
auto_start_flutter
Dart 3 compatible 👍 57
Maintenance Status: Poor
The plugin redirects the user to auto-start permission screen to allow auto-start and fix background problems in some phones.
android_long_task
Dart 3 compatible 👍 57
Maintenance Status: Poor
android long task is a flutter plugin to run dart code in an android foreground service with simplicity
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 👍 43
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.
ear
Dart 3 compatible 👍 42
Maintenance Status: Poor
A flutter plugin project to handle all coming notification for android platform platforms.
mac_address
Dart 3 compatible 👍 39
Maintenance Status: Poor
A new Flutter plugin to get MAC Address of Android and iOS Device
volume_watcher
Dart 3 compatible 👍 37
Maintenance Status: Poor
Support ios and android real-time return system volume value, maximum volume, initial volume, support set volume.
usage_stats
Dart 3 compatible 👍 36
Maintenance Status: Poor
Query Android Usage Statistics (Configurations, Events, Usage)
root
Dart 3 compatible 👍 35
Maintenance 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
Dart 3 compatible 👍 32
Maintenance Status: Poor
A Flutter plugin to retrieve Sim cards data - dual sim support - only Android for now.
optimize_battery
Dart 3 compatible 👍 32
Maintenance Status: Poor
Check for battery optimization status and open settings or disable it
flutter_screen_wake
Dart 3 compatible 👍 30
Maintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
flutter_callkit_voximplant
Dart 3 compatible 👍 26
Maintenance Status: Poor
Flutter SDK for CallKit integration to Flutter applications on iOS
flutter_dnd
Dart 3 compatible 👍 24
Maintenance Status: Poor
A Flutter plugin to manage Do Not Disturb settings on Android.
ringtone_set
Dart 3 compatible 👍 22
Maintenance Status: Poor
Flutter Plugin for setting devices default ringtone or notification sound.
ringtone_player
Dart 3 compatible 👍 22
Maintenance Status: Poor
A player for system default ringtone, alarm and notification.
volume_control
Dart 3 compatible 👍 21
Maintenance Status: Poor
A flutter plugin to programmatically adjust the device's volume on Android and iOS.
serial_communication
Dart 3 compatible 👍 13
Maintenance Status: Poor
An Android Plugin for Serial Communication which allows you to read and write the data through the available ports
screen
👍 121
Maintenance Status: Poor
A Flutter plugin to manage the device's screen on Android and iOS.
wallpaper_manager
👍 103
Maintenance Status: Poor
A Flutter plugin for changing the Home Screen, Lock Screen (or both) Wallpaper(s) on Android devices.
flutter_appavailability
👍 90
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
Maintenance Status: Poor
This plugin provides an easy way to make phone calls, and track the state of the phone call
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.
foreground_service
👍 52
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
👍 48
Maintenance Status: Poor
A Flutter plugin for iOS and Android for detecting various hardware buttons such as volume and home button.
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.
flutter_android
👍 40
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.
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.