23 个仓库
Tools for bridging the JVM with native C/C++ code and libraries.
Explore 23 awesome GitHub repositories matching part of an awesome list · Native Interop. Refine with filters or upvote what's useful.
PojavLauncher is a mobile launcher and game wrapper that provides a compatible Java Runtime Environment for mobile operating systems. Its primary purpose is to enable the execution of the Java Edition of Minecraft on Android and iOS devices. The project includes a mobile game input mapper that adapts desktop keyboard and mouse controls to touch screen interfaces. It also provides tools for mobile game modding, allowing users to install and manage custom content through a mobile interface.
Uses Java Native Interface bridges to allow the virtual machine to access low-level system libraries for memory and file operations.
ZygiskNext is an Android rooting integration layer and system hooking framework. It functions as a code injector for the Android Zygote process, allowing for the modification of system behavior across various rooting environments and superuser managers. The project provides a specialized API to intercept and modify low-level system calls. This enables the injection of custom code into the base process that spawns applications, facilitating deep Android system customization and rooted development. The framework utilizes dynamic library loading, hook-based runtime modification, and Java Native
Uses the Java Native Interface to bridge high-level logic with low-level C++ system calls.
JavaCV provides a Java-based interface for native computer vision and video processing libraries. It functions as a wrapper for native vision libraries, allowing Java applications to perform image analysis, object detection, and video stream processing. The project integrates comprehensive computer vision capabilities, including facial recognition, image segmentation, and optical flow analysis for motion tracking. It also provides tools for hardware geometry calibration and projector-camera alignment to ensure accurate spatial representation. The system covers high-performance media renderin
Maps Java method calls to native C and C++ functions using the Java Native Interface.
This project is a cross-platform mobile device information library designed to retrieve hardware, software, and network specifications from iOS and Android devices. It serves as a tool for accessing unique device identifiers, hardware models, and processor architectures to distinguish individual mobile devices. The library provides specialized capabilities for mobile hardware identification and operating system metadata retrieval, including build numbers and API levels. It also functions as a system state monitor for real-time tracking of battery levels, charging status, and network connectiv
Uses JNI bridges to allow high-level logic to query low-level Android OS properties and hardware identifiers.
The Android ARCore SDK is a software development kit and augmented reality framework used to create experiences on Android devices. It provides a collection of tools and native libraries for tracking device motion and mapping physical environments to place virtual objects in real space. The framework utilizes an environmental tracking API to detect physical planes and estimate ambient lighting, which blends digital content with the real world. It includes systems for fixing virtual content to specific physical locations to maintain spatial stability as a user moves through an environment. Th
Provides JNI bridges to connect high-performance C++ computer vision libraries with the Android Java API.
LWJGL is a cross-platform library that provides Java bindings to native APIs for graphics, audio, compute, windowing, and input. It enables Java applications to access low-level hardware-accelerated capabilities such as OpenGL and Vulkan rendering, OpenAL 3D audio, OpenCL GPU compute, and GLFW windowing and input handling. Under the hood, LWJGL dynamically resolves native function pointers at runtime, loads platform-specific shared libraries, and uses generated JNI bindings to bridge Java and native code. It offers explicit memory management through direct buffer access and stack-allocated me
Bridges Java code to native libraries through generated Java Native Interface wrappers.
unidbg 是一个用于在宿主机上模拟和调试 ARM32 和 ARM64 原生二进制文件的框架。它充当 Android 和 iOS 二进制调试器和原生库模拟器,允许在无需物理硬件的情况下执行原生代码。 该项目通过原生函数 Hook 框架和模型上下文协议 (MCP) 调试工具脱颖而出,该工具将模拟器状态暴露给 AI 助手以进行自动化二进制分析。它还包括一个专门的内存分析器,用于跟踪访客端分配并识别原生二进制文件中的泄漏。 该工具集涵盖了多个功能领域,包括原生代码逆向工程、指令级执行跟踪和 JNI 桥接模拟。它通过内存读/写日志和控制台调试器提供可观测性,同时利用线程安全的模拟器池来减少初始化开销。
Simulates a JNI bridge to enable native libraries to interact with a simulated Android runtime.
Fcitx5 Android is an input method manager that brings the Fcitx5 framework to Android, enabling multilingual text input through a customizable virtual keyboard. It functions as a platform for loading plugin-based input engines, supports conversion between simplified and traditional Chinese characters, and provides a theme engine for dynamically altering the keyboard's appearance with custom colors, images, and popup previews. The project is built around a native C++ core that handles dictionary lookups and text processing, connected to the Android interface via a JNI bridge for performance. I
Uses JNI to bridge the Android Java framework with a native C++ core for high-performance dictionary management and text processing.
JavaCPP 是一个 JNI C++ 桥接器和外部函数接口,提供绑定生成器、原生库加载器和原生内存管理器。它自动化了在原生 C++ 头文件和共享库周围创建 Java 包装器的过程,以实现两种语言之间的互操作性。 该项目具有一个 C++ 绑定生成器,可解析头文件以自动生成调用原生函数所需的胶水代码和接口。它包含一个原生库加载器,可定位并从类路径中提取特定平台的二进制文件到本地缓存中以供运行时执行。 该系统通过直接指针映射和资源跟踪来管理高性能原生内存访问,以防止内存泄漏。它处理 C++ 数据结构的复杂类型映射,并支持原生回调映射以将函数指针链接到 Java 方法。 该工具集允许使用 C++ 或汇编实现替换托管方法,以优化执行时间并减少资源开销。
Provides a JNI-based bridge that maps Java method calls to native function executions in C++ or assembly.
本项目是一个针对 Qt 框架的技术库和知识库,作为 C++ GUI 编程指南和跨平台开发资源。它提供了一系列专注于使用 Qt 生态系统构建应用的技术指南、最佳实践和教学材料。 该仓库专注于优化应用性能和开发工作流。它涵盖了用于提高构建速度和执行效率的架构模式,包括内存数据库的使用和异步函数调用。它还提供了关于通过原生接口包装器集成 Java 代码以开发混合应用的专业指导。 该项目的范围扩展到了自定义界面设计和跨平台兼容性。这包括高性能图形渲染、跨不同像素密度的响应式缩放,以及跨不同操作系统管理文件路径和文本编码的技术。 它还包含一套精选的电子书、编程标准和开发工具使用教程。
Provides a native interface wrapper to call Java methods and retrieve values from C++.
mobile-ffmpeg 提供了一个移动多媒体处理框架,允许 Android、iOS 和 tvOS 应用程序执行视频和音频转码及过滤任务。它支持将预编译的二进制文件集成到移动项目中,以避免针对不同硬件架构进行手动交叉编译。 该项目支持跨平台编译以及第三方编解码器和外部库的集成。它提供了一种在多个操作系统和不同 CPU 架构之间部署通用二进制文件的机制。 该工具集涵盖了媒体元数据分析、从设备摄像头录制和捕获媒体,以及并发执行生命周期的管理。它利用 Android 的 Java Native Interface 和 Apple 平台的 Objective-C 包装器,将高级应用程序代码与低级媒体处理二进制文件连接起来。
Implements JNI bridges to connect the Android Java environment with underlying C media processing libraries.
Lemuroid 是一款 Android 多系统模拟器和 Libretro 前端,旨在通过单一界面运行来自多个复古游戏系统的游戏。它作为复古游戏库管理器,扫描本地存储中的游戏文件并将它们组织成可搜索的目录。 该应用程序包括一个云同步存档管理器,可通过远程存储在不同设备间保留游戏进度。它还具有虚拟游戏手柄界面,允许跨物理控制器、倾斜传感器和屏幕触摸覆盖层进行自定义输入映射。 其他功能涵盖游戏状态管理、本地多人游戏支持,以及应用视觉滤镜以模拟旧式 CRT 或 LCD 硬件的外观。
Uses JNI bridges to facilitate communication between the Java-based Android UI and native C-based emulator cores.
Magick.NET is a C# image processing library that serves as a .NET wrapper for ImageMagick. It provides a raster graphics engine for rendering text, drawing graphics, and manipulating images using a native interface. The library handles the conversion of vector files, such as PDF, EPS, and PostScript, into raster formats. It also includes tools for extracting image metadata, such as EXIF data and raw thumbnails. The system covers a wide range of image manipulation capabilities, including resizing, format conversion, watermarking, and the merging of multiple images into static or animated file
Acts as a thin managed interop layer for the native ImageMagick binary library.
This is an Android multimedia player designed to decode and play a wide variety of audio and video formats. It functions as a network media streamer and a multimedia library manager, indexing local files into a searchable database for organized access. The project includes a high-fidelity audio processor for routing signals through hardware interfaces like SPDIF and HDMI, and a Chromecast media controller for streaming content to external renderers and UPnP devices. It supports advanced visual rendering, including high dynamic range video with tonemapping, 360-degree video, and spatial audio.
Implements a JNI bridge to synchronize state and controls between the Java UI and the native C core.
Orbot is an Android network anonymization tool designed to route mobile internet traffic through the Tor network. Its primary purpose is to hide a user's identity and location from websites by masking the originating network address. The software enables users to bypass internet censorship to access blocked services and prevents trackers from identifying a mobile device. It provides a local SOCKS proxy configuration to force specific applications to send traffic through an encrypted tunnel. The application utilizes the Android VPN service to capture device traffic at the network layer and in
Interfaces with the Tor C binary via JNI to manage the core network routing process.
Autopsy is a digital forensic analysis platform and evidence management suite used to process disk images and file systems. It provides a graphical interface for performing deep forensic examinations of computer hard drives to identify and extract digital artifacts for investigations. The platform is built as a Java-based forensic framework that integrates native libraries to perform direct disk image analysis. It utilizes a modular architecture, allowing for the extension of data ingestion and report generation through the use of plugins. The system manages digital evidence within a central
Uses JNI bridges to integrate low-level C and C++ forensic libraries for direct disk image analysis.
这是一个用于 Lightweight Charts 库的 Python 封装,旨在渲染交互式的浏览器端金融可视化图表。它是一个构建自定义金融仪表盘和界面的框架,能够集成实时市场数据流和历史数据序列。 该库支持通过组合多面板图表、自选股列表和订单录入表格来构建复杂的布局,并将其整合进统一的工作区。它通过将实时 Tick 或 Bar 数据直接流式传输到活跃的图表中,支持实时市场监控,无需刷新页面即可实现增量更新。 除了基础渲染,该工具包还提供了强大的技术分析功能,包括直接在画布上绘制标注、趋势线和标记。用户可以配置蜡烛图、成交量柱状图和图例的视觉外观,并将时间周期选择或键盘快捷键等交互操作映射到自定义的 Python 逻辑中。
Provides a WebSocket-based bridge for real-time communication between Python and browser-based rendering engines.
Java Abstracted Foreign Function Layer
Load native libraries without writing JNI code.
Realm Kotlin is a local, object-oriented NoSQL database engine designed for Kotlin Multiplatform applications. It enables developers to persist structured application data directly as objects, eliminating the need for traditional relational table structures while ensuring information remains accessible during offline periods. The library distinguishes itself through a compiler-plugin-based architecture that maps standard language classes to database models at compile time. It utilizes zero-copy memory mapping and a lazy-loading query engine to manage data efficiently, while a shared C++ core
Bridges high-level language code to a shared C++ core for consistent cross-platform database behavior.