FLUTTER ECOSYSTEM

jnigen

A Dart bindings generator for Java and Kotlin that uses JNI under the hood to interop with Java virtual machine.

Latest version
1.0.0
30-day downloads
44.9K
Likes
133
Pub points
160

Package Overview

Package selection guidance compiled from public package information, community data, and project usage.

Overview

Jnigen is a Dart package that generates bindings for Java and Kotlin code, enabling seamless interoperability with the Java Virtual Machine via JNI. It simplifies calling Java/Kotlin functions from Dart in cross-platform applications, particularly useful for Android and other JVM-based environments. The tool automates the creation of native interfaces, reducing boilerplate and improving integration reliability. It's part of the Dart Native ecosystem and supports multiple platforms including Android, iOS, macOS, Windows, and Linux.

Use cases
  • Calling Java/Kotlin libraries from Dart
  • Integrating native Android SDKs
  • Extending Dart apps with JVM code
  • Cross-platform mobile development
  • Building hybrid apps with native performance
Key features
  • Automated JNI binding generation
  • Support for Java and Kotlin
  • Multi-platform compatibility
  • Integration with Dart Native ecosystem
  • Reduces manual JNI coding
Suitable for
  • Dart developers targeting Android
  • Teams using Java/Kotlin libraries
  • Projects needing high-performance native interop
  • Hybrid app developers
  • Cross-platform mobile teams
Considerations
  • Requires knowledge of JNI concepts
  • Limited to JVM-compatible platforms
  • May increase build complexity
  • Not suitable for pure Flutter-only apps
  • Potential for larger app size due to native dependencies
Supported platformsAndroidiOSmacOSWindowsLinux

Install package

flutter pub add jnigen

Categories

Dependencies

Dependency list 11 items

Source repository

Related projects

Rankings