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
| Module | artifactId | Purpose |
|---|---|---|
| Core API | unidbg-api | Emulator interfaces, memory, hooks, debugger |
| Android | unidbg-android | Android emulator, DVM, JNI, ELF loader |
| iOS | unidbg-ios | Darwin emulator, Mach-O loader, ObjC support |
| Dynarmic | unidbg-dynarmic | JIT backend (fastest) |
| Unicorn2 | unidbg-unicorn2 | Unicorn2 backend (cross-platform) |
| Hypervisor | unidbg-hypervisor | macOS/Linux hypervisor backend |
| KVM | unidbg-kvm | Linux KVM backend |
Architecture Support
- ARM 32-bit (ARMv7)
- ARM 64-bit (ARMv8/AArch64)
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>