这是com.androids.ide.eclipse.ndk_23.0.2.1259578.jar下载,一(yī)般我们在安装(zhuāng)成功了ndk后,需要在adtbundle上面设置NDK路径,但(dàn)是一开始是没有的。
androids平台(tái)从诞生起,就已经(jīng)支持C、C++开发。众所周知,androids的SDK基于Java实现,这意(yì)味着基于(yú)androids SDK进行开(kāi)发的第三(sān)方应(yīng)用(yòng)都必须使(shǐ)用(yòng)Java语言。但(dàn)这并不等同于“第三方应用只能使用Java”。在androids SDK首次(cì)发布时,Google就宣称其虚(xū)拟机Dalvik支持JNI编程方式(shì),也就是第三方应用(yòng)完全可以通过JNI调用自己的C动态(tài)库,即在(zài)androids平台上,“Java+C”的编程(chéng)方(fāng)式(shì)是一直都(dōu)可以实现的。
不(bú)过,Google也表示,使(shǐ)用(yòng)原生(shēng)SDK编程相比Dalvik虚拟机也有一些劣势,androids SDK文档里,找不到任何JNI方面的帮助(zhù)。即使第三方(fāng)应用开发者(zhě)使用JNI完成了自己(jǐ)的C动(dòng)态(tài)链接库(so)开发,但是(shì)so如何(hé)和应用程序一(yī)起打包成apk并发布(bù)?这里(lǐ)面也存在技术障碍。比如程序更加(jiā)复杂,兼容性难以保障,无法访问(wèn)Framework API,Debug难(nán)度(dù)更大等。开发者需要自行斟酌使用。于是NDK就应运而生了(le)。NDK全称是Native Development Kit。NDK的发布,使“Java+C”的开发方(fāng)式终于(yú)转正,成(chéng)为官方(fāng)支持的开发方式。NDK将(jiāng)是androids平台支(zhī)持C开发的开端。
1.代码的保护。由于(yú)apk的java层代码很容易(yì)被反(fǎn)编译,而(ér)C/C++库反(fǎn)汇难度较大(dà)。
2.可以(yǐ)方便地使用现(xiàn)存的开源库(kù)。大部分(fèn)现存(cún)的(de)开源库都是用C/C++代(dài)码编写的(de)。
3.提高(gāo)程(chéng)序的执行效率。将要求高性(xìng)能的应用逻辑使用C开发,从而提(tí)高应用程序的执(zhí)行效率(lǜ)。
4.便于移植。用C/C++写得(dé)库可以方便在其他(tā)的嵌(qiàn)入式平台上再次使(shǐ)用(yòng)。
com.androids.ide.eclipse.ndk_23.0.2.1259578.jar是学习《androids软件安(ān)全(quán)与逆(nì)向(xiàng)分析》首先(xiān)就(jiù)是搭建androids开发环境,该书是2013年1月出版(bǎn),到现在非常多工(gōng)具都(dōu)已有了更新版本号,安装上也有了差别,在此总结最(zuì)新版本(běn)号的安装(zhuāng)流程并(bìng)汇总下载地址,以(yǐ)便(biàn)于高速搭(dā)建最(zuì)新开发环(huán)境,供大(dà)家參考。
