GithubHelp home page GithubHelp logo

jonirrings / androidnativeemu Goto Github PK

View Code? Open in Web Editor NEW

This project forked from aeonlucid/androidnativeemu

0.0 0.0 0.0 1.27 MB

Allows you to partly emulate an Android native library.

License: GNU General Public License v3.0

Python 100.00%

androidnativeemu's Introduction

AndroidNativeEmu

GitHub Workflow Status PyPI PyPI - Python Version

Allows you to partly emulate an Android native library.

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

Read me for chinese readers 中文README

Features

  • Emulation of the JNI Invocation API so JNI_OnLoad can be called properly.
  • Emulation of native memory for malloc / memcpy.
  • Emulation of syscalls (SVC #0) instruction.
  • Hooking through the symbol table.
  • All JavaVM, JNIEnv and hooked functions are handled by python.
  • Enable VFP support.

Installation

You can install AndroidNativeEmu with pip.

pip install androidemu

TODO

  • Improve file descriptors in vfs/file_system.py so they are re-useable.
  • Add a way for the VirtualFileSystem to give back dynamic files, such as /proc/self/status, /proc/self/status but also /dev/urandom.
  • Library consumers must be able to easily rebuild the needed Java classes for a native library, which are used by the native library through the JNIEnv.
    • Classes
    • Objects
    • Methods
    • Native methods
    • Fields
    • Types
    • Reflection

Dependencies

Resources

All resources used while developing AndroidNativeEmu.

Text sources

Code sources

androidnativeemu's People

Contributors

aeonlucid avatar hzyitc avatar ch3nye avatar worldwonderer avatar p4nda0s avatar profiles avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.