universal_ble 0.12.0 copy "universal_ble: ^0.12.0" to clipboard
universal_ble: ^0.12.0 copied to clipboard

A cross-platform (Android/iOS/macOS/Windows/Linux/Web) Bluetooth Low Energy (BLE) plugin for Flutter

45
likes
130/ 160
pub points
89%
popularity

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

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: BSD-3-Clause.

OK
Provide documentation
20 / 20trigger folding of the section

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

44 out of 138 API elements (31.9 %) have documentation comments.

Some symbols that are missing documentation: universal_ble, universal_ble.AvailabilityState, universal_ble.BleCapabilities, universal_ble.BleCapabilities.BleCapabilities, universal_ble.BleCapabilities.hasSystemPairingApi.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ iOS

  • ✓ Windows

  • ✓ Linux

  • ✓ macOS

  • ✓ Web

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:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_web/universal_ble_web.dart that imports:
  • package:flutter_web_bluetooth/flutter_web_bluetooth.dart that declares support for platforms: Web.
Package does not support platform `iOS`.

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_web/universal_ble_web.dart that imports:
  • package:flutter_web_bluetooth/flutter_web_bluetooth.dart that declares support for platforms: Web.
Package does not support platform `Windows`.

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_web/universal_ble_web.dart that imports:
  • package:flutter_web_bluetooth/flutter_web_bluetooth.dart that declares support for platforms: Web.
Package does not support platform `Linux`.

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_web/universal_ble_web.dart that imports:
  • package:flutter_web_bluetooth/flutter_web_bluetooth.dart that declares support for platforms: Web.
Package does not support platform `macOS`.

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_web/universal_ble_web.dart that imports:
  • package:flutter_web_bluetooth/flutter_web_bluetooth.dart that declares support for platforms: Web.
Package does not support platform `Web`.

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_linux/universal_ble_linux.dart that imports:
  • package:bluez/bluez.dart that declares support for platforms: Linux.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:universal_ble/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble.dart that imports:
  • package:universal_ble/src/universal_ble_linux/universal_ble_linux.dart that imports:
  • package:bluez/bluez.dart that imports:
  • package:bluez/src/bluez_client.dart that imports:
  • package:dbus/dbus.dart that imports:
  • package:dbus/src/dbus_value.dart that imports:
  • dart:io

This package is not compatible with runtime wasm, and will not be rewarded full points in a future version of the scoring model.

See https://dart.dev/web/wasm for details.

0/0 points: Swift Package Manager support

Package does not support the Swift Package Manager on macOS

It does not contain darwin/universal_ble/Package.swift.

This package for iOS or macOS does not support the Swift Package Manager. It will not receive full points in a future version of the scoring model.

See https://docs.flutter.dev/to/spm for details.

partial
Pass static analysis
40 / 50trigger folding of the section

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

/tmp/pana_MIWCNC/lib/src/models/model_exports.dart doesn't match the Dart formatter.

To format your files run: dart format .

/tmp/pana_MIWCNC/lib/src/universal_ble_pigeon/universal_ble.g.dart doesn't match the Dart formatter.

To format your files run: dart format .

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

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

Package Constraint Compatible Latest
bluez ^0.8.2 0.8.2 0.8.2
flutter flutter 0.0.0 0.0.0
flutter_web_bluetooth ^0.2.2 0.2.4 1.0.0
plugin_platform_interface ^2.1.6 2.1.8 2.1.8
Transitive dependencies
Package Constraint Compatible Latest
args - 2.6.0 2.6.0
characters - 1.3.0 1.3.1
collection - 1.18.0 1.19.1
dbus - 0.7.10 0.7.10
ffi - 2.1.3 2.1.3
js - 0.7.1 0.7.1
logging - 1.3.0 1.3.0
material_color_utilities - 0.11.1 0.12.0
meta - 1.15.0 1.16.0
petitparser - 6.0.2 6.0.2
sky_engine - 0.0.99 0.0.99
vector_math - 2.1.4 2.1.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 `^0.2.2` on flutter_web_bluetooth does not support the stable version `1.0.0`, that was published 0 days ago.

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

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

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

0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 2 errors:

  • UNDEFINED_NAMED_PARAMETER - lib/src/universal_ble_web/universal_ble_web.dart:404:9 - The named parameter 'optionalManufacturerData' isn't defined.
  • UNDEFINED_NAMED_PARAMETER - lib/src/universal_ble_web/universal_ble_web.dart:410:9 - The named parameter 'optionalManufacturerData' isn't defined.

Run flutter pub downgrade and then flutter analyze to reproduce the above problem.

You may run dart pub upgrade --tighten to update your dependency constraints, see dart.dev/go/downgrade-testing for details.

Analyzed with Pana 0.22.15, Flutter 3.24.5, Dart 3.5.4.

Check the analysis log for details.

45
likes
130
pub points
89%
popularity

Publisher

verified publishernavideck.com

A cross-platform (Android/iOS/macOS/Windows/Linux/Web) Bluetooth Low Energy (BLE) plugin for Flutter

Homepage
Repository (GitHub)
View/report issues

Documentation

API reference

Funding

Consider supporting this project:

github.com

License

BSD-3-Clause (license)

Dependencies

bluez, flutter, flutter_web_bluetooth, plugin_platform_interface

More

Packages that depend on universal_ble