jni 0.11.0 copy "jni: ^0.11.0" to clipboard
jni: ^0.11.0 copied to clipboard

A library to access JNI from Dart and Flutter that acts as a support library for package:jnigen.

36
likes
130/ 160
pub points
88%
popularity

We analyzed this package 4 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.

partial
Provide documentation
10 / 20trigger folding of the section

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

257 out of 1419 API elements (18.1 %) have documentation comments.

Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API. Document at least 20% of the public API elements.

To highlight public API members missing documentation consider enabling the public_member_api_docs lint.

Some symbols that are missing documentation: internal_helpers_for_jnigen.$MethodInvocation, internal_helpers_for_jnigen.$MethodInvocation.$MethodInvocation.fromAddresses, internal_helpers_for_jnigen.$MethodInvocation.$MethodInvocation.fromMessage, internal_helpers_for_jnigen.$MethodInvocation.args, internal_helpers_for_jnigen.$MethodInvocation.methodDescriptor.

10/10 points: Package has an example

failed
Platform support
20 / 20trigger folding of the section

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

  • ✓ Android

  • ✓ Windows

  • ✓ Linux

These platforms are not supported:

Package does not support platform `iOS`.

Because:

  • package:jni/jni.dart that declares support for platforms: Android, Windows, Linux.
Package does not support platform `macOS`.

Because:

  • package:jni/jni.dart that declares support for platforms: Android, Windows, Linux.
Package does not support platform `Web`.

Because:

  • package:jni/jni.dart that declares support for platforms: Android, Windows, Linux.

0/0 points: WASM compatibility

Package not compatible with runtime wasm

Because:

  • package:jni/jni.dart that imports:
  • package:jni/src/util/util.dart that imports:
  • package:jni/src/util/jset.dart that imports:
  • package:jni/src/util/jiterator.dart that imports:
  • package:jni/src/types.dart that imports:
  • package:jni/src/third_party/generated_bindings.dart that imports:
  • package:jni/src/third_party/jni_bindings_generated.dart that imports:
  • dart:ffi

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.

OK
Pass static analysis
50 / 50trigger folding of the section

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

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
args ^2.3.1 2.6.0 2.6.0
collection ^1.0.0 1.19.0 1.19.0
ffi ^2.0.1 2.1.3 2.1.3
package_config ^2.1.0 2.1.0 2.1.0
path ^1.8.0 1.9.0 1.9.0
plugin_platform_interface ^2.0.2 2.1.8 2.1.8
Transitive dependencies
Package Constraint Compatible Latest
meta - 1.16.0 1.16.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

0/20 points: Compatible with dependency constraint lower bounds

downgrade analysis failed failed with 2 errors:

  • UNDEFINED_GETTER - lib/src/jarray.dart:92:24 - The getter 'nativeFree' isn't defined for the type 'Allocator'.
  • UNDEFINED_GETTER - lib/src/jarray.dart:93:24 - The getter 'nativeFree' isn't defined for the type 'Allocator'.

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.12, Flutter 3.24.3, Dart 3.5.3.

Check the analysis log for details.

36
likes
130
pub points
88%
popularity

Publisher

verified publisherlabs.dart.dev

A library to access JNI from Dart and Flutter that acts as a support library for package:jnigen.

Repository (GitHub)
View/report issues
Contributing

Topics

#interop #ffi #java #kotlin #jni

Documentation

API reference

License

BSD-3-Clause (license)

Dependencies

args, collection, ffi, package_config, path, plugin_platform_interface

More

Packages that depend on jni