flutter_fcm 1.2.1 copy "flutter_fcm: ^1.2.1" to clipboard
flutter_fcm: ^1.2.1 copied to clipboard

Flutter plugin for Firebase Cloud Messaging (FCM) , a cross-platform messaging solution that lets you reliably deliver messages on Android and iOS.

26
likes
130/ 140
pub points
82%
popularity

We analyzed this package 29 hours ago, and awarded it 130 pub points (of a possible 140):

OK
Follow Dart file conventions
30 / 30trigger folding of the section

10/10 points: Provide a valid pubspec.yaml

5/5 points: Provide a valid README.md

5/5 points: Provide a valid CHANGELOG.md

10/10 points: Use an OSI-approved license

Detected license: MIT.

OK
Provide documentation
20 / 20trigger folding of the section

10/10 points: 20% or more of the public API has dartdoc comments

153 out of 166 API elements (92.2 %) have documentation comments.

Some symbols that are missing documentation: fcm, fcm.FCM, flutter_fcm, flutter_fcm.AndroidNotification.link, flutter_fcm.Firebase.delegatePackingProperty.

10/10 points: Package has an example

OK
Platform support
20 / 20trigger folding of the section

20/20 points: Supports 3 of 6 possible platforms (iOS, Android, Web, Windows, macOS, Linux)

  • ✓ Android
  • ✓ iOS
  • ✓ macOS

These platforms are not supported:

Package does not support platform `Windows`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:firebase_messaging/firebase_messaging.dart that declares support for platforms: Android, iOS, macOS, Web.
Package does not support platform `Linux`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:firebase_messaging/firebase_messaging.dart that declares support for platforms: Android, iOS, macOS, Web.
Package does not support platform `Web`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:flutter_fcm/notification/fcm.dart that imports:
  • package:flutter_fcm/notification/local_notification.dart that imports:
  • package:flutter_local_notifications/flutter_local_notifications.dart that declares support for platforms: Android, iOS, Linux, macOS.

These issues are present but do not affect the score, because they may not originate in your package:

Package does not support platform `Android`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:flutter_fcm/notification/fcm.dart that imports:
  • package:flutter_fcm/notification/local_notification.dart that imports:
  • package:flutter_local_notifications/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications/src/notification_details.dart that imports:
  • package:flutter_local_notifications_linux/flutter_local_notifications_linux.dart that imports:
  • package:flutter_local_notifications_linux/src/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications_linux/src/notifications_manager.dart that imports:
  • package:flutter_local_notifications_linux/src/storage.dart that imports:
  • package:flutter_local_notifications_linux/src/platform_info.dart that imports:
  • package:xdg_directories/xdg_directories.dart that declares support for platforms: Linux.
Package does not support platform `iOS`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:flutter_fcm/notification/fcm.dart that imports:
  • package:flutter_fcm/notification/local_notification.dart that imports:
  • package:flutter_local_notifications/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications/src/notification_details.dart that imports:
  • package:flutter_local_notifications_linux/flutter_local_notifications_linux.dart that imports:
  • package:flutter_local_notifications_linux/src/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications_linux/src/notifications_manager.dart that imports:
  • package:flutter_local_notifications_linux/src/storage.dart that imports:
  • package:flutter_local_notifications_linux/src/platform_info.dart that imports:
  • package:xdg_directories/xdg_directories.dart that declares support for platforms: Linux.
Package does not support platform `macOS`.

Because:

  • package:flutter_fcm/flutter_fcm.dart that imports:
  • package:flutter_fcm/notification/fcm.dart that imports:
  • package:flutter_fcm/notification/local_notification.dart that imports:
  • package:flutter_local_notifications/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications/src/notification_details.dart that imports:
  • package:flutter_local_notifications_linux/flutter_local_notifications_linux.dart that imports:
  • package:flutter_local_notifications_linux/src/flutter_local_notifications.dart that imports:
  • package:flutter_local_notifications_linux/src/notifications_manager.dart that imports:
  • package:flutter_local_notifications_linux/src/storage.dart that imports:
  • package:flutter_local_notifications_linux/src/platform_info.dart that imports:
  • package:xdg_directories/xdg_directories.dart that declares support for platforms: Linux.
partial
Pass static analysis
40 / 50trigger folding of the section

40/50 points: code has no errors, warnings, lints, or formatting issues

INFO: Statements in an if should be enclosed in a block.

lib/notification/fcm.dart:71:11

   ╷
71 │ ┌           Timer.periodic(
72 │ │             Duration(milliseconds: 500),
73 │ │             (timer) {
74 │ │               if (navigatorKey.currentState == null) return;
75 │ │               onNotificationPressed!(message.data);
76 │ │               timer.cancel();
77 │ │             },
78 │ └           );
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/notification/fcm.dart

lib/notification/fcm.dart doesn't match the Dart formatter.

To format your files run: dart format .

OK
Support up-to-date dependencies
20 / 20trigger folding of the section

10/10 points: All of the package dependencies are supported in the latest version

Package Constraint Compatible Latest
firebase_core ^2.23.0 2.27.2 2.27.2
firebase_messaging ^14.7.5 14.7.21 14.7.21
flutter flutter 0.0.0 0.0.0
flutter_local_notifications ^16.1.0 16.3.3 17.0.0
Transitive dependencies
Package Constraint Compatible Latest
_flutterfire_internals - 1.3.27 1.3.27
args - 2.4.2 2.4.2
async - 2.11.0 2.11.0
boolean_selector - 2.1.1 2.1.1
characters - 1.3.0 1.3.0
clock - 1.1.1 1.1.1
collection - 1.18.0 1.18.0
dbus - 0.7.10 0.7.10
fake_async - 1.3.1 1.3.1
ffi - 2.1.2 2.1.2
firebase_core_platform_interface - 5.0.0 5.0.0
firebase_core_web - 2.13.0 2.13.0
firebase_messaging_platform_interface - 4.5.29 4.5.29
firebase_messaging_web - 3.7.1 3.7.1
flutter_local_notifications_linux - 4.0.0+1 4.0.0+1
flutter_local_notifications_platform_interface - 7.0.0+1 7.0.0+1
flutter_test - 0.0.0 0.0.0
flutter_web_plugins - 0.0.0 0.0.0
js - 0.6.7 0.7.1
leak_tracker - 10.0.0 10.0.4
leak_tracker_flutter_testing - 2.0.1 3.0.3
leak_tracker_testing - 2.0.1 3.0.1
matcher - 0.12.16+1 0.12.16+1
material_color_utilities - 0.8.0 0.11.1
meta - 1.11.0 1.12.0
path - 1.9.0 1.9.0
petitparser - 6.0.2 6.0.2
plugin_platform_interface - 2.1.8 2.1.8
sky_engine - 0.0.99 0.0.99
source_span - 1.10.0 1.10.0
stack_trace - 1.11.1 1.11.1
stream_channel - 2.1.2 2.1.2
string_scanner - 1.2.0 1.2.0
term_glyph - 1.2.1 1.2.1
test_api - 0.6.1 0.7.0
timezone - 0.9.2 0.9.2
vector_math - 2.1.4 2.1.4
vm_service - 13.0.0 14.2.0
web - 0.5.1 0.5.1
xdg_directories - 1.0.4 1.0.4
xml - 6.5.0 6.5.0

To reproduce run dart pub outdated --no-dev-dependencies --up-to-date --no-dependency-overrides.

The constraint `^16.1.0` on flutter_local_notifications does not support the stable version `17.0.0`, that was published 17 days ago.

When flutter_local_notifications is 30 days old, this package will no longer be awarded points in this category.

Try running dart pub upgrade --major-versions flutter_local_notifications to update the constraint.

10/10 points: Package supports latest stable Dart and Flutter SDKs

Analyzed with Pana 0.22.2, Flutter 3.19.2, Dart 3.3.0.

Check the analysis log for details.

26
likes
130
pub points
82%
popularity

Publisher

verified publisherwaelalhalabi.com

Flutter plugin for Firebase Cloud Messaging (FCM) , a cross-platform messaging solution that lets you reliably deliver messages on Android and iOS.

Repository (GitHub)
View/report issues

Documentation

API reference

License

MIT (LICENSE)

Dependencies

firebase_core, firebase_messaging, flutter, flutter_local_notifications

More

Packages that depend on flutter_fcm