Flutter Gems is a curated list of 6000+ useful Dart & Flutter packages that are categorized based on functionality.

Discord Medium LinkedIn Twitter

Top Flutter Android/iOS Device Software and Hardware packages

Last updated: November 15, 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.36K
Maintenance Status: Good

A flutter plugin for executing dart code continously even application closed.

background_fetch
Dart 3 compatible 👍 1.15K
Maintenance Status: Good

Periodic callbacks in the background for both iOS and Android. Includes Android Headless implementation.

vibration
Dart 3 compatible 👍 763
Maintenance Status: Good

A plugin for handling Vibration API on iOS, Android, web and OpenHarmony.

android_alarm_manager_plus
Dart 3 compatible 👍 512
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 👍 436
Maintenance Status: Good

This plugin is used to implement a foreground service on the Android platform.

flutter_callkit_incoming
Dart 3 compatible 👍 390
Maintenance Status: Good

Flutter Callkit Incoming to show callkit screen in your Flutter app.

back_button_interceptor
Dart 3 compatible 👍 348
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 👍 310
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 Card Image
safe_device
Dart 3 compatible 👍 273
Maintenance Status: Good

With the Flutter safe_device package, you can easily implement security steps such as Jailbroken, root, emulator and fake location detection.

flutter_ringtone_player
Dart 3 compatible 👍 264
Maintenance Status: Good

A simple player for system default ringtones, alarms and notifications

alarm Card Image
alarm
Dart 3 compatible 👍 263
Maintenance Status: Good

A simple Flutter alarm manager plugin for both iOS and Android.

usb_serial
Dart 3 compatible 👍 162
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 👍 158
Maintenance Status: Good

Flutter plugin to detect when app(not Flutter container) goes to background or foreground

android_id
Dart 3 compatible 👍 118
Maintenance Status: Good

A Flutter plugin for getting the Android ID. Only for Android.

screen_brightness
Dart 3 compatible 👍 117
Maintenance Status: Good

A Plugin for controlling screen brightness with application life cycle reset implemented

no_screenshot
Dart 3 compatible 👍 116
Maintenance Status: Good

Flutter plugin to enable, disable, toggle or stream screenshot activities in your application.

phone_state Card Image
phone_state
Dart 3 compatible 👍 103
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 👍 96
Maintenance Status: Good

Flutter plugin for accessing an Android Lifecycle within other plugins.

disable_battery_optimization
Dart 3 compatible 👍 95
Maintenance Status: Good

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

installed_apps
Dart 3 compatible 👍 90
Maintenance Status: Good

Flutter plugin with utility methods related to installed apps on device.

appcheck
Dart 3 compatible 👍 89
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 👍 85
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 👍 80
Maintenance Status: Good

iOS CallKit and Android ConnectionService bindings for Flutter

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.

gaimon
Dart 3 compatible 👍 73
Maintenance Status: Good

A Flutter plugin to fully support Haptic feedback with custom pattern.

haptic_feedback
Dart 3 compatible 👍 69
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 👍 57
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.

client_information Card Image
client_information
Dart 3 compatible 👍 52
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).

flutter_activity_recognition
Dart 3 compatible 👍 49
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 Card Image
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 👍 36
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 Card Image
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 Card Image
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.08K
Maintenance Status: Average

Flutter Workmanager. This plugin allows you to schedule background work on Android and iOS.

app_settings
Dart 3 compatible 👍 1.06K
Maintenance Status: Average

A Flutter plugin for opening iOS and Android phone settings from an app.

shake
Dart 3 compatible 👍 198
Maintenance Status: Average

A flutter package to detect phone shakes. Adjustable G-force and reset periods.

flutter_displaymode
Dart 3 compatible 👍 174
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 👍 150
Maintenance Status: Average

Auxiliary classes for reliably running a periodic task in a long-running process such as web-server.

google_api_availability
Dart 3 compatible 👍 86
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 Card Image
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 👍 57
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).

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_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.

flutter_foreground_service
Dart 3 compatible 👍 30
Maintenance Status: Average

Foreground service for the Android platform, keeps app running even when in background.

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 👍 22
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 👍 2
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 👍 347
Maintenance Status: Poor

Simple flutter plugin to call a number directly, without going to phone dialer, from app

flutter_windowmanager
Dart 3 compatible 👍 336
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 👍 198
Maintenance Status: Poor

The most complete flutter plugin packages for open various settings screen in Android and Ios

flutter_vibrate
Dart 3 compatible 👍 188
Maintenance Status: Poor

A Haptic Feedback plugin.

move_to_background
Dart 3 compatible 👍 170
Maintenance Status: Poor

Flutter plugin for sending application to background. Send your app to the background with one line of code.

mobile_number
Dart 3 compatible 👍 103
Maintenance Status: Poor

A Flutter plugin for fetching the device's mobile number or list sim cards data

device_information
Dart 3 compatible 👍 103
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.

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 👍 98
Maintenance Status: Poor

A cross-platform (Android/Windows/macOS/Linux) USB plugin for Flutter

battery_info
Dart 3 compatible 👍 73
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 👍 65
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 👍 56
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 👍 29
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.

minimize_app
👍 45
Maintenance Status: Poor

A flutter plugin to minimize the app

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.

vibrate
👍 25
Maintenance Status: Poor

A Haptic Feedback plugin.

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.

orientation
👍 16
Maintenance Status: Poor

A Flutter plugin for device orientation