Overview

unidbg Overview

Group: com.github.zhkl0228 | Version: 0.9.10-SNAPSHOT

unidbg emulates ARM/ARM64 native code (.so, .dylib) on the JVM. Primary use cases: reverse engineering, JNI call tracing, and extracting logic from Android/iOS native libraries.

Module Structure

ModuleartifactIdPurpose
Core APIunidbg-apiEmulator interfaces, memory, hooks, debugger
Androidunidbg-androidAndroid emulator, DVM, JNI, ELF loader
iOSunidbg-iosDarwin emulator, Mach-O loader, ObjC support
Dynarmicunidbg-dynarmicJIT backend (fastest)
Unicorn2unidbg-unicorn2Unicorn2 backend (cross-platform)
Hypervisorunidbg-hypervisormacOS/Linux hypervisor backend
KVMunidbg-kvmLinux KVM backend

Architecture Support

Key Source Paths

unidbg-api/src/main/java/com/github/unidbg/          # Core interfaces
unidbg-android/src/main/java/com/github/unidbg/      # Android impl
unidbg-android/src/main/java/com/github/unidbg/linux/android/dvm/  # DVM/JNI
unidbg-ios/src/main/java/com/github/unidbg/ios/      # iOS impl

Maven Dependency

1<dependency>
2    <groupId>com.github.zhkl0228</groupId>
3    <artifactId>unidbg-android</artifactId>
4    <version>0.9.10-SNAPSHOT</version>
5</dependency>