" />
這是com.android.ide.eclipse.ndk_23.0.2.1259578.jar下載,一般我們在安裝成功了ndk后,需要在adtbundle上面設(shè)置NDK路徑,但是一開始是沒有的。
Android平臺從誕生起,就已經(jīng)支持C、C++開發(fā)。眾所周知,Android的SDK基于Java實(shí)現(xiàn),這意味著基于Android SDK進(jìn)行開發(fā)的第三方應(yīng)用都必須使用Java語言。但這并不等同于“第三方應(yīng)用只能使用Java”。在Android SDK首次發(fā)布時(shí),Google就宣稱其虛擬機(jī)Dalvik支持JNI編程方式,也就是第三方應(yīng)用完全可以通過JNI調(diào)用自己的C動態(tài)庫,即在Android平臺上,“Java+C”的編程方式是一直都可以實(shí)現(xiàn)的。
不過,Google也表示,使用原生SDK編程相比Dalvik虛擬機(jī)也有一些劣勢,Android SDK文檔里,找不到任何JNI方面的幫助。即使第三方應(yīng)用開發(fā)者使用JNI完成了自己的C動態(tài)鏈接庫(so)開發(fā),但是so如何和應(yīng)用程序一起打包成apk并發(fā)布?這里面也存在技術(shù)障礙。比如程序更加復(fù)雜,兼容性難以保障,無法訪問Framework API,Debug難度更大等。開發(fā)者需要自行斟酌使用。于是NDK就應(yīng)運(yùn)而生了。NDK全稱是Native Development Kit。NDK的發(fā)布,使“Java+C”的開發(fā)方式終于轉(zhuǎn)正,成為官方支持的開發(fā)方式。NDK將是Android平臺支持C開發(fā)的開端。
1.代碼的保護(hù)。由于apk的java層代碼很容易被反編譯,而C/C++庫反匯難度較大。
2.可以方便地使用現(xiàn)存的開源庫。大部分現(xiàn)存的開源庫都是用C/C++代碼編寫的。
3.提高程序的執(zhí)行效率。將要求高性能的應(yīng)用邏輯使用C開發(fā),從而提高應(yīng)用程序的執(zhí)行效率。
4.便于移植。用C/C++寫得庫可以方便在其他的嵌入式平臺上再次使用。
com.android.ide.eclipse.ndk_23.0.2.1259578.jar是學(xué)習(xí)《Android軟件安全與逆向分析》首先就是搭建Android開發(fā)環(huán)境,該書是2013年1月出版,到現(xiàn)在非常多工具都已有了更新版本號,安裝上也有了差別,在此總結(jié)最新版本號的安裝流程并匯總下載地址,以便于高速搭建最新開發(fā)環(huán)境,供大家參考。