課程介紹
今天和大家一起分享一下安卓與C++的關(guān)系。今天我們的課程內(nèi)容主要是安卓NDK開發(fā)環(huán)境的搭建,以及安卓與C++之間如何調(diào)用等一些內(nèi)容。這個課程也是我們C++項目“打分軟件”的一部分。
我們先來介紹一下Android SDK
Android是基于Linux內(nèi)核的一個手機(jī)操作系統(tǒng),谷歌提供了開發(fā)包(Android SDK),程序員可以通過開發(fā)包開發(fā)Android App(應(yīng)用程序)。Android SDK提供JAVA語言接口,因此Android應(yīng)用是Java開發(fā)的。
使用Java開發(fā)App的缺點(diǎn)
在某些場合下,使用純Java開發(fā)Android蠅蛹程序并不完美,比如:
?有高性能算法,Java語言無法滿足
?有跨平臺需求,希望將APP移植到iOS
?已有代碼的重用
引用NDK
早在Android 1.6(2009年)時,google就提供了NDK,NDK包括了一套Android的交叉編譯環(huán)境和開發(fā)庫,利用它可以編寫C/C
++程序,并編譯成Android環(huán)境下使用的動態(tài)庫,Java代碼通過Jni規(guī)范,調(diào)用C/C++寫的動態(tài)庫。