better_player 0.0.84 copy "better_player: ^0.0.84" to clipboard
better_player: ^0.0.84 copied to clipboard

Advanced video player. It solves many typical use cases and it's easy to run.

1219
likes
140/ 160
pub points
98%
popularity

We analyzed this package 2 days ago, and awarded it 140 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: Apache-2.0.

OK
Provide documentation
20 / 20trigger folding of the section

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

340 out of 410 API elements (82.9 %) have documentation comments.

Some symbols that are missing documentation: better_player, better_player.BetterPlayer.BetterPlayer.file, better_player.BetterPlayer.BetterPlayer.network, better_player.BetterPlayer.controller, better_player.BetterPlayerAsmsDataHolder.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ iOS

These platforms are not supported:

Package does not support platform `Windows`.

Because:

  • package:better_player/better_player.dart that declares support for platforms: Android, iOS.
Package does not support platform `Linux`.

Because:

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

Because:

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

Because:

  • package:better_player/better_player.dart that declares support for platforms: Android, iOS.

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:better_player/better_player.dart that imports:
  • package:better_player/src/core/better_player.dart that imports:
  • package:wakelock_plus/wakelock_plus.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_io_plugin.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_windows_plugin.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.
Package does not support platform `iOS`.

Because:

  • package:better_player/better_player.dart that imports:
  • package:better_player/src/core/better_player.dart that imports:
  • package:wakelock_plus/wakelock_plus.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_io_plugin.dart that imports:
  • package:wakelock_plus/src/wakelock_plus_windows_plugin.dart that imports:
  • package:win32/win32.dart that declares support for platforms: Windows.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:better_player/better_player.dart that imports:
  • package:better_player/src/video_player/video_player.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 iOS

It does not contain ios/better_player/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.

failed
Pass static analysis
30 / 50trigger folding of the section

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

Found 12 issues. Showing the first 2:

WARNING: The parameter type of '==' operators should be non-nullable.

lib/src/asms/better_player_asms_track.dart:43:17

   ╷
43 │   bool operator ==(dynamic other) {
   │                 ^^
   ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/asms/better_player_asms_track.dart

WARNING: The receiver can't be null, so the null-aware operator '?.' is unnecessary.

lib/src/core/better_player_controller.dart:1263:33

     ╷
1263 │     return VideoPlayerController?.stopPreCache(betterPlayerDataSource.url,
     │                                 ^^
     ╵

To reproduce make sure you are using the lints_core and run flutter analyze lib/src/core/better_player_controller.dart

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

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

Package Constraint Compatible Latest
collection ^1.18.0 1.18.0 1.19.1
cupertino_icons ^1.0.8 1.0.8 1.0.8
flutter flutter 0.0.0 0.0.0
flutter_widget_from_html_core ^0.15.1 0.15.2 0.15.2
meta ^1.12.0 1.15.0 1.16.0
path_provider ^2.1.3 2.1.5 2.1.5
visibility_detector ^0.4.0+2 0.4.0+2 0.4.0+2
wakelock_plus ^1.2.5 1.2.8 1.2.8
xml ^6.5.0 6.5.0 6.5.0
Transitive dependencies
Package Constraint Compatible Latest
args - 2.6.0 2.6.0
async - 2.12.0 2.12.0
characters - 1.3.0 1.3.1
clock - 1.1.2 1.1.2
csslib - 1.0.2 1.0.2
dbus - 0.7.10 0.7.10
ffi - 2.1.3 2.1.3
flutter_web_plugins - 0.0.0 0.0.0
html - 0.15.5 0.15.5
http - 1.2.2 1.2.2
http_parser - 4.0.2 4.1.1
logging - 1.3.0 1.3.0
material_color_utilities - 0.11.1 0.12.0
package_info_plus - 8.1.1 8.1.1
package_info_plus_platform_interface - 3.0.1 3.0.1
path - 1.9.1 1.9.1
path_provider_android - 2.2.12 2.2.12
path_provider_foundation - 2.4.0 2.4.0
path_provider_linux - 2.2.1 2.2.1
path_provider_platform_interface - 2.1.2 2.1.2
path_provider_windows - 2.3.0 2.3.0
petitparser - 6.0.2 6.0.2
platform - 3.1.6 3.1.6
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
string_scanner - 1.4.0 1.4.0
term_glyph - 1.2.1 1.2.1
typed_data - 1.4.0 1.4.0
vector_math - 2.1.4 2.1.4
wakelock_plus_platform_interface - 1.2.1 1.2.1
web - 1.1.0 1.1.0
win32 - 5.8.0 5.8.0
xdg_directories - 1.1.0 1.1.0

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

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

20/20 points: Compatible with dependency constraint lower bounds

pub downgrade does not expose any static analysis error.

Analyzed with Pana 0.22.15, Flutter 3.24.5, Dart 3.5.4.

Check the analysis log for details.