Top Flutter Android/iOS Device Software and Hardware packages 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
1901
Flutter Workmanager. This plugin allows you to schedule background work on Android and iOS.
flutter_background_service
1170
A flutter plugin for executing dart code continously even application closed.
background_fetch
1071
Periodic callbacks in the background for both iOS and Android. Includes Android Headless implementation.
android_alarm_manager_plus
475
Flutter plugin for accessing the Android AlarmManager service, and running Dart code in the background when alarms fire.
flutter_foreground_task
352
This plugin is used to implement a foreground service on the Android platform.
device_apps
333
List applications installed on an Android device (iOS is not supported). You can also monitor application changes (updates, uninstallation…)
flutter_phone_direct_caller
324
Simple flutter plugin to call a number directly, without going to phone dialer, from app
double_back_to_close_app
321
A Flutter package that allows Android users to press the back-button twice to close the app.
back_button_interceptor
314
Back Button Interceptor. May be used to do stuff when the Android back-button is tapped, as an alternative to 'WillPopScope'.
open_settings
186
The most complete flutter plugin packages for open various settings screen in Android and Ios
move_to_background
164
Flutter plugin for sending application to background. Send your app to the background with one line of code.
flutter_displaymode
159
A Flutter plugin to set display mode (resolution, refresh rate) on Android platform. Allows to enable high refresh rate on supported devices.
usb_serial
143
This plugin will allow you to easily use the USB uart hardware based on FTDI or CDC (and more!) protocols.
flutter_fgbg
137
Flutter plugin to detect when app(not Flutter container) goes to background or foreground
wallpaper_manager
103
A Flutter plugin for changing the Home Screen, Lock Screen (or both) Wallpaper(s) on Android devices.
call_log
100
A Flutter plugin to access and query call history log. Support for Android only as iOS does not provide API for accessing call history.
device_information
98
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.
flutter_plugin_android_lifecycle
90
Flutter plugin for accessing an Android Lifecycle within other plugins.
flutter_appavailability
90
Flutter plugin that allows you to check if an app is installed/enabled, launch an app and get the list of installed apps.
disable_battery_optimization
83
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
phone_state
82
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.
google_api_availability
81
A Flutter plugin to check the availability of Google Play Services on an Android device.
carrier_info
76
Carrier Info gets networkType, networkGeneration, mobileCountryCode, mobileCountryCode, e.t.c from both android and ios devices
async_wallpaper
71
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.
appcheck
69
Flutter plugin that allows you to check if an app is installed/enabled, launch an app and get the list of installed apps.
battery_info
68
Flutter plugin providing detailed information about the device battery (level, health, charging status, etc.). Now supports both IOS and android
flutter_phone_state
62
This plugin provides an easy way to make phone calls, and track the state of the phone call
ussd_service
61
A Flutter plugin to make silent USSD requests and read their responses, using Android's sendUssdRequest. iOS is not supported.
imei_plugin
61
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.
activity_recognition_flutter
59
Activity recognition plugin for Android and iOS. Provides event-based information about activities detected by the phone.
double_back_to_close
59
Flutter package for request double back pressed before close app/route/screen. Wrap any widget with it to use.
android_long_task
54
android long task is a flutter plugin to run dart code in an android foreground service with simplicity
ussd_advanced
53
Runs ussd code directly in your application, supports single session and multi session ussd calls
flutter_foreground_plugin
52
A foreground service plugin for Flutter. Support only Android (support Oreo). iOS not support yet.
foreground_service
51
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.
auto_start_flutter
49
The plugin redirects the user to auto-start permission screen to allow auto-start and fix background problems in some phones.
fullscreen
48
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
46
A Flutter plugin for iOS and Android for detecting various hardware buttons such as volume and home button.
wallpaper
45
The Purpose of the plugin is to set wallpaper from url. Only supported to android. Internally using WallpaperManager to set wallpaper.
flutter_voip_kit
43
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.
sound_mode
39
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_android
39
A Flutter plugin for Android platform-specific APIs, to reduce duplication of effort by centralizing Android bindings in a single package.
flutter_activity_recognition
37
This plugin is used to recognize user activity on Android and iOS platforms.
flutter_alarm_background_trigger
37
A flutter plugin for Android to launch app from background at specific time just like stock alarm app in Android.
system_shortcuts
35
ANDROID & IOS flutter plugin to use system shortcuts like pressing home, back, volume Up, volume Down keys and toggle wifi, and bluetooth as well.
haptic_feedback
34
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.
volume_watcher
34
Support ios and android real-time return system volume value, maximum volume, initial volume, support set volume.
root
33
Flutter Plugin to check Android device Root status and Run shell commands in android(only), use this plugin only for short period of processes.
get_phone_number
33
Get real phone number from device - It only works on android device and also need to run in a real device.
open_settings_plus
32
The most complete flutter plugin packages for open various settings screen, covering newer versions of ios and android.
torch_compat
32
Plugin to turn on / off the torch (or flash of the camera) on all supported versions of Android (4.1+) and iOS
user_messaging_platform
29
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.
flutter_foreground_service
27
Foreground service for the Android platform, keeps app running even when in background.
flutter_wallpaper_manager
27
Flutter wallpaper manager plugin, helps you setup wallpaper on android devices. Support home screen, lock screen and both screen wallpaper mode.
headset_connection_event
23
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.
hardware_buttons_find_flutter
21
On mobile devices with different buttons on it, listening for the name of the button when the buttons are pressed.
phone_state_i
16
Listen to Phone Call State(phone is connected/Idle) and provide call back on both iOS and andriod devices.
huawei_hmsavailability
14
HUAWEI Availability Plugin for Flutter. It allows you to detect whether HMS Core apk is installed on a device.
serial_communication
13
An Android Plugin for Serial Communication which allows you to read and write the data through the available ports
flutter_headset_detector
4
Flutter Plugin for headset events. Detect headset is plugged and unplugged. Get current headset state.