Skip to content

Latest commit

 

History

History
41 lines (29 loc) · 1.54 KB

README.md

File metadata and controls

41 lines (29 loc) · 1.54 KB

libdatachannel-java (NGE)

License: MPL 2.0

This is a fork of libdatachannel C Java wrappers: libdatachannel-java intended to be used within the Nostr Game Engine codebase.

The fork diverges from the original repository in few key areas:

  • Direct ByteBuffer allocation can be wired to a custom allocator
  • Private secure mimalloc for desktop JNI, libdatachannel and embedded native dependencies. Android and iOS use the platform allocator.
  • JUL instead of SLF4J for logging.

Usage

Windows, MacOS, Linux

implementation("org.ngengine:libdatachannel-java:0.24.1.nge8")
implementation("org.ngengine:libdatachannel-java-arch-detect:0.24.1.nge8")

Android

implementation("org.ngengine:libdatachannel-java:0.24.1.nge8")
implementation("org.ngengine:libdatachannel-java-android:0.24.1.nge8")

To use libdatachannel on Android, the following permissions are required:

  • android.permission.INTERNET

iOS with libJGLIOS

implementation("org.ngengine:libdatachannel-java:0.24.1.nge8")
implementation("org.ngengine:libdatachannel-java-ios:0.24.1.nge8")

The iOS module bundles LibDataChannelJava.xcframework under lib/ios, including private OpenSSL code, so libJGLIOS can link the correct device or simulator slice from the runtime classpath. Separate OpenSSL frameworks are not required.