⑴ 安卓sdk和ndk都是什麼有什麼區別哪個更有前途
讓我先來說說android sdk (Android Software Development Kit, 即Android軟體開發工具包)可以說只要你使用java去開發Android這個東西就必須用到。他包含了SDK Manager 和 AVD Manage
對於android系統的一些開發版本的管理以及模擬器管理。
而ndk (Native Development Kit)跟sdk差不多的是他也是一個開發工具包。用他開發c/c++是很方便的。他有一個強大的編譯集合。
其實名詞的解釋我也不想多說。這點你只需要網路分別輸入sdk 和 ndk 網路里就有你想要的。
區別是什麼我只想說是他們基本上是應該沒什麼相同的。
至於哪個更有前途。
這個不好說。
我來說說android他為什麼會有一個ndk把。
很早以前android是只有sdk的。並沒有ndk。這就意味著一旦android的開發者要使用c/c++的三方庫或者需要用到c/c++就必須使用非官方的法子。用java的jni去調用c/c++。耍小聰明走後門一樣。而ndk的出現就意味著jni調用的這種方法轉正了變成官方了以後你不需要再走後面大路正面隨你走。
可是這樣還是沒有說到為什麼要有ndk啊。是的我只想說的就是如果你要操作底層直接操作內存。操作地址那你不得不去使用c/c++因為java這塊想做這些。那恐怕有點困難。所以ndk是必須需要出現的。
而這個sdk和ndk並不是完全不相溶的2門語言。對於android來說是同種語言的2種不同時期的必須品。
最後想說如果你做android開發想要做得更好你就必須要ndk的。
一句套話:學得好什麼都有前途、
⑵ 安卓的NDK和SDK是什麼
可以用NDK開發,但不會替代SDK,因為NDK開發難度非常發,NDK有個巨大的麻煩就是現在有x86晶元的android手機的,用NDK就會需要提供兩套APK,比較麻煩。Android平台的第三方應用程序均是依靠基於Java的Dalvik特製虛擬機進行開發的。原生SDK(NDK)的可以讓開發者更加直接的接觸Android系統資源,並使用傳統的C或C++語言編寫程序,並在程序封包文件(.apks)中直接嵌入原生庫文件。NDK主要用於一些具有大量邏輯計算和高性能的圖像渲染的工作,比如我們要開發款大型的3D游戲,那麼如果使用AndroidSDK通過Java來開發,速度和性能上很難滿足我們的要求,這是就可以使用NDK通過C\C++來開發原生的程序來處理這些渲染,可以極大的提高我們游戲的性能。所以我們很有必要對NDK進行學習。