android中ndk的开发
前言(其实是吐槽) 这是我看(android应用安全防护和逆向分析)遇到的第一个坑了,在章节2.1和2.2里,虽然作者很贴心的给了步骤教你如何搭建ndk的开发环境,但是,我要说的是,如果按照作者在2.1.2的五个步骤按部就班的来,你绝对!不可能!完成! 主要的原因我就不再分析了,大约就是少了一堆乱七八糟的说明和步骤,这里我重新写一遍ndk开发相关。(如果你不信,可以尝试只按照2.1.2章节的五步来尝试) 搭建NDK开发环境 NDK相关概念 首先,普及一下ndk的概念,何谓ndk开发呢? 简而言之,就是让安卓(java)可以调用前人用c语言完成的库,这么做的好处主要有两个, 第一,节约代码量,提高工作(运行)效率,可以用之前c写好的很多很棒的库 第二,防止应用被逆向,因为java层的代码很容易被反编译逆向突破。 再介绍几个ndk里相关概念名词,.c,.cpp,这几个不用多说了吧,就是c或者c++等文件的后缀名;.so,这个是编译c文件得到的库文件的后缀名,.so文件大概就相当于windows上的.dll文件,他可以方便让别人调用;.h,也就是通过javah命令编译类(class)文件编译...