Android Studio 3.5 JNI编程与动态注册

Android的JNI、so与JAVA

Android程序分2层,java层与native层,Java层就是Java代码编译为dex文件的。而native层则是c++代码编译为so动态库。两者使用jni(java native interface)来进行链接。相比于java,native层安全性更加高,隐蔽性更好,某种情况下效率更高。国内的加密与检测一般都放在native层中进行。

Jni分为静态和动态注册两种方式,Android Studio默认的工程是静态注册。

环境搭建:

Android Studio 3.5.3

打开SdkManager下载LLDB、NDK、CMake。
Android Studio 3.5 JNI编程与动态注册_第1张图片
Project Structure中配置NDK。
Android Studio 3.5 JNI编程与动态注册_第2张图片

建立一个C++Native工程

[File] -> [New] ->[New Project…],选择Native C++模版。

你可能感兴趣的:(安卓逆向)