Skip to content
Allows you to emulate an Android ARM32 and/or ARM64 native library
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore 删除不完善的测试 Mar 9, 2019
LICENSE Create LICENSE Mar 15, 2019
mvnw 增加mvnw Mar 5, 2019
mvnw.cmd 增加mvnw Mar 5, 2019
pom.xml Bug fix for win32 Mar 13, 2019 Initial commit Feb 26, 2019 优化依赖 Mar 6, 2019 优化依赖 Mar 6, 2019
test_win32.cmd Add prebuilt win32 Mar 13, 2019
test_win64.cmd Add prebuilt win64 Mar 12, 2019


Allows you to emulate an Android ARM32 and/or ARM64 native library.

This is an educational project to learn more about the ELF file format and ARM assembly.


VM options: -Djava.library.path=prebuilt/os -Djna.library.path=prebuilt/os
Where os may: linux64, win32, win64, osx64

Simple tests under src/test directory


  • Emulation of the JNI Invocation API so JNI_OnLoad can be called.
  • Support JavaVM, JNIEnv.
  • Emulation of syscalls instruction.
  • Support ARM32 and ARM64 bit ELF.
  • Inline hook, thanks to HookZz.
  • Import hook, thanks to xHook.
  • Support simple debugger, instruction trace, memory read/write trace.


You can’t perform that action at this time.