日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android下NDK开发环境搭建

發(fā)布時間:2025/4/16 Android 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android下NDK开发环境搭建 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Android下NDK開發(fā)環(huán)境搭建

?

1.?????AndroidNDK安裝與配置

?

1.1? NDK簡介

?

Android NDK是一套允許開發(fā)人員使用本地代碼(如C/C++)進(jìn)行Android APP部分功能開發(fā)的工具,通過這個工具,我們可以把用C/C++代碼編譯成可以直接運行在Android平臺上的本地代碼,這些本地代碼以動態(tài)鏈接庫( *.so )的形式存在,也正因為這樣,我們可以通過復(fù)用這些動態(tài)鏈接庫從而復(fù)用本地代碼。

那么,通過NDK這個開發(fā)工具包,那么我們是否可以將一個APK完全使用C/C++來編寫呢?

答案是不可以的。眾所周知,Android應(yīng)用程序是運行在Dalvik虛擬機(jī)上的。而NDK只開發(fā)了部分接口,所以NDK只是允許開發(fā)人員通過C/C++實現(xiàn)Android APP的部分功能。由于Android系統(tǒng)本身就是Linux核心,NDK只是負(fù)責(zé)把這些本地代碼編寫成可以運行在linux上的動態(tài)鏈接庫,從而繞過了Dalvik虛擬機(jī),直接運行在Android平臺上了。

?

The NDK is atoolset that allows you to implement parts of your app using native-codelanguages such as C and C++. For certain types of apps, this can be helpful soyou can reuse existing code libraries written in these languages, but most appsdo not need the Android NDK.

?

Before downloadingthe NDK, you should understand that the NDK will not benefit most apps. As adeveloper, you need to balance its benefits against its drawbacks. Notably,using native code on Android generally does not result in a noticableperformance improvement, but it always increases your app complexity. Ingeneral, you should only use the NDK if it is essential to your app—neverbecause you simply prefer to program in C/C++.

?

Typical goodcandidates for the NDK are CPU-intensive workloads such as game engines, signalprocessing, physics simulation, and so on. When examining whether or not youshould develop in native code, think about your requirements and see if theAndroid framework APIs provide the functionality that you need.

?

1.2? NDK下載

下載地址:http://developer.android.com/tools/sdk/ndk/index.html


圖1

可以看出現(xiàn)在的目標(biāo)平臺都有32和64位之分。

?

?

1.3? NDK安裝

直接把下載的安裝包解壓到我們想要放的路徑下即可,我這里是把加壓后的android-ndk-r10b(此目錄下就有ndk-build.cmd編譯工具)放在D:\ADT bundle目錄下。

?

1.4? NDK環(huán)境配置

配置環(huán)境變量,把ndk-build.cmd所在的位置D:\ADT bundle\android-ndk-r10b添加系統(tǒng)變量Path的添加此路徑信息,如下圖:


圖2

?

?

1.5? NDK的安裝驗證

完成上面的步驟之后,NDK的安裝到此就完成了,下面我們來驗證一下NDK安裝成功與否. 打開cmd.exe,在里面輸入ndk-build -version,輸出以下內(nèi)容,表示安裝成功。


圖3

?

?

1.6? NDK編譯程序

?

現(xiàn)在我們用安裝好的NDK來編譯一個NDK提供的sample程序hello-jni(我的目錄位于:D:\ADT-bundle\android-ndk-r10b\samples\hello-jni)。

?

(1)??進(jìn)入hello-jni目錄下。

(2)??直接輸入命令ndk-build編譯本地代碼,輸出以下內(nèi)容,表示成功編譯生成動態(tài)鏈接庫,同時我們在hello-jni\obj\local\armeabi路徑下可以看到編譯好的libhello-jni.so。


圖4

?

?

1.7? 驗證hello-jni

(1)??在Eclipse,選擇File--->New--->Project,如下圖:


圖5

選擇Android--->Android Project from ExistingCode,然后選擇Next,如下圖:


圖6

Root Directory選擇hello-jni目錄,且選擇Finish。在這之前記得是要先編譯hello-jni且成功so文件。

?

(2)??打開AVD,然后選擇Run--->Run As--->Android Application,運行界面如下圖所示:


圖7

?

?

?

2.?????Cygwin和CDT

Cygwin:由于NDK開發(fā)大都涉及到C/C++在GCC環(huán)境下編譯、運行,所以在Windows環(huán)境下,需要用Cygwin模擬Linux編譯環(huán)境,下載地址:http://www.cygwin.com/,根據(jù)PC系統(tǒng)是32位還是64位系統(tǒng)來選擇下載對應(yīng)的安裝文件。

?

android-ndk-r7-windows往上的版本都集成了cygwin,因此無需再安cygwin。所謂的集成了cygwin就是說,安裝包解壓后有個ndk-build.cmd命令。配置eclipse直接調(diào)這個cmd命令,完成編譯。

?

CDT:CDT是C/C++在Eclipse平臺下的開發(fā)工具.它提供的功能包括:C/C++編輯器(一些基本的功能:語法高亮顯示,代碼編輯等),C/C++調(diào)試器,C/C++ Launcher,剖析器,內(nèi)容提示,Makefile生成器等。

?

Android官網(wǎng)下載Android的開發(fā)工具ADT(Android Development Tool的縮寫),該工具集成了最新的ADT以及Eclipse,還有一個最新版本SDK。解壓之后就可以用了

?

ADT插件:管理Android SDK和相關(guān)的開發(fā)工具的

NDK插件:用于開發(fā)Android NDK的插件,ADT版本在20以上,就能安裝NDK插件,另外NDK集成了cygwin和CDT插件,我下載的android-ndk32-r10b-windows-x86_64壓縮包解壓后有1.4GB。

?

所以不需要單獨下載cygwin和CDT了。我下載的是谷歌提供的ADT 綁定版,那么它已經(jīng)默認(rèn)安裝好了相應(yīng)的CDT了,打開Eclipse--->Help--->About ADT,如下圖:


圖8

?

3.?????Eclipse中使用NDK

3.1? NDK配置

打開Eclipse,點Window->Preferences->Android->NDK,設(shè)置NDK路徑,例如我的是:D:\ADT-bundle\android-ndk-r10b


圖9

驗證NDK配置是否OK可以導(dǎo)入一個現(xiàn)有的工程來驗證,如1.7節(jié)描述,也可以通過新建Android工程。

?

?

3.2? CDT驗證

在Eclispe中新建一個項目,如果出現(xiàn)了C/C++項目,則表明CDT插件安裝成功了,選擇File--->New--->Project,如下圖:


圖10

參考:

C++開發(fā)安卓、windows下搭建Android NDK開發(fā)環(huán)境

http://www.cr173.com/html/24813_1.html

?

Android之NDK開發(fā)

http://blog.csdn.net/loongembedded/article/details/39718283

?

NDK開發(fā)環(huán)境搭建_r8

http://www.cnblogs.com/baronzhao/archive/2012/07/10/2585181.html

?

Android新版NDK環(huán)境配置(免Cygwin)

http://blog.csdn.net/codezjx/article/details/8879670

?

windows下eclipseandroid-ndkr7b環(huán)境配置

http://blog.csdn.net/xinzheng_wang/article/details/7416543

?

Windos下Android(ADT Bundle)配置NDK的兩種方法------ADT、Cygwin、NDK配置匯總

http://blog.csdn.net/yanzi1225627/article/details/16897877

?

Android NDK環(huán)境搭建

http://jingyan.baidu.com/article/5d6edee22d908799eadeec9f.html

?

總結(jié)

以上是生活随笔為你收集整理的Android下NDK开发环境搭建的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 在线天堂资源 | 女人扒开屁股让我添 | 婷婷六月色 | 一本色道久久88综合无码 | 天堂网国产 | 亚洲性生活大片 | 哺乳援交吃奶在线播放 | 日本真人做爰免费视频120秒 | 亚洲高清网 | 亚洲欧美综合一区二区 | 美女福利片 | 亚洲天堂视频在线观看 | 亚洲专区免费 | 四虎成人精品永久免费av | 欧美日韩国产专区 | 一级成人免费视频 | 免费观看毛片视频 | 国产三级国产精品国产专区50 | 亚洲男女网站 | 亚洲一区二区av在线 | 国产综合在线观看 | 欧美精品在线第一页 | 在线观看视频免费 | 国产老女人精品毛片久久 | 成年免费视频黄网站在线观看 | av中文字幕一区二区三区 | 8x8ⅹ成人永久免费视频 | 国产区一区二 | 黄色免费毛片 | 国产网站入口 | 男生和女生操操 | 96看片 | 国产午夜片 | 中出 在线 | 四虎精品成人免费网站 | 精品福利视频一区二区 | 国产欧美日韩专区 | 日本一区二区视频免费 | 日本精品一区二区三区视频 | 国产精品日韩欧美一区二区三区 | 久久久久久成人精品 | 国产精品羞羞答答 | 在线观看天堂av | 老妇裸体性激交老太视频 | av中文字幕网址 | 精品一区电影国产 | 91久久久久久| 91大神小宝寻花在线观看 | 欧美性天堂 | 亚洲欧洲日本国产 | 无码一区二区精品 | 精品国产av鲁一鲁一区 | 爱爱免费网址 | 国产精品9191 | aaa国产视频 | www.欧美激情 | 美日韩久久 | 亚洲国产精品无码久久久 | 校园春色欧美 | 日本高清无吗 | 天天射天天干天天 | 荷兰女人裸体性做爰 | 欧洲亚洲成人 | 公侵犯人妻一区二区 | 丝袜美腿中文字幕 | 男女拍拍拍网站 | 欧美一级黄色片在线观看 | 蜜桃视频成人 | 国产青草| 无码人妻久久一区二区三区蜜桃 | 国产伦精品一区二区三区视频黑人 | 日韩一区二区高清 | 国产成人亚洲精品无码h在线 | 亚洲区精品| 一本久久久 | 欧美性猛交xxxx乱大交 | 国产观看 | 伊人国产在线 | 亚洲色图视频在线观看 | 金鱼妻日剧免费观看完整版全集 | 久久久久久黄 | 五月天视频网站 | 日韩二区三区 | 521av在线| 色爱成人综合 | 亚洲一区中文字幕在线观看 | 91传媒入口 | 98堂 最新网名 | 超级砰砰砰97免费观看最新一期 | 一区二区三区四区国产精品 | 中文字幕在线观看国产 | 最新中文字幕在线视频 | 欧美色吊丝| 日韩一二三区在线观看 | 一区二区三区精品视频在线观看 | 国产精品视频导航 | 久久综合亚洲色hezyo国产 | 日本熟妇一区二区三区四区 | xxx性视频|