《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 解決方案 > Android 2.3 (Gingerbread) NDK現在更加接近純本機開發

Android 2.3 (Gingerbread) NDK現在更加接近純本機開發

2011-08-08
關鍵詞: 開發工具 Android NDK

   隨著近期Gingerbread的發布及基于ARM的Android每日激活數量達到300,000(參見James Bruce的博客),開發人員迎來了前所未有的好機遇。開發人員所使用的工具也比以前要好。Gingerbread的更新引起了對如何支持開發人員為快速成長的消費市場創建優質內容的強烈關注。 

   Android很早就隨軟件開發套件(SDK)提供了一套本機開發套件(NDK)。NDK可以支持以C和/或ARM匯編代碼創建本機函數。Java應用程序可以通過Java本機接口(JNI)調用這些函數。一位筆名為ARM_DaveB的ARM首席軟件工程師寫了一篇關于NDK的精彩博客。
 
   盡管NDK的工作模式旨在實現專門任務,但我們通過與許多Android應用程序開發人員交談發現,他們更愿意將整個應用程序嵌入一個本地庫。他們只愿意創建一個非常小的Java封裝來處理應用程序生命周期管理并訪問本機代碼無法訪問的API。瘋狂流行的Rovio專營游戲“憤怒的小鳥”,及曾經風靡一時的Mozilla Firefox瀏覽器均是采取這方式的典范。
 
 
圖1 - Mozilla Foundation Firefox for Android
 
 
新NDK中的增強本機API類別
隨著Android 2.3 (Gingerbread) SDKr8和谷歌NDKr5的發布,許多事情都發生了改變!對于那些使用過NDK的有經驗的開發人員,谷歌推出了一系列可用于本機代碼的API擴展功能。這將極大地改進本機代碼的性能并提高其多功能性。增強的本機API類包括:
輸入和傳感器事件
基于Khronos OpenSL ES標準的Audio API
基于Khronos EGL標準的EGL界面
適用于圖形資源的資源管理器API
 
NativeActivity類轉變NDK工作模式
然而,最為顯著的變化則是引入了NativeActivity類。這一新功能代表著NDK工作模式的重大轉變。本機代碼的NativeActivity類附加功能支持應用程序生命周期管理,而窗口管理則可在Java外執行。它可以有效地將“main()”從Java轉至C。這意味著可以完全使用C/C++/ARM匯編代碼來編寫應用程序,而無需開發Java或JNI捆綁包。它賦予了開發人員選擇Java或C的真正自由權力,從而進一步為Android平臺上的應用程序開發打開了一個開發人員社區的超集。
 
新的NativeActivity類與當前一些激進的NDK用戶編寫的代碼并沒有什么不同,都將應用程序的大部分移至本地庫。它提供了一個本地幫助程序類以將回調函數捆綁至本機代碼。NativeActivity中的這些方法不僅是源自Java中的標準Activity類,可以提供Java應用程序的靈活性,而且該類還增加了一些處理附加任務的獨特方法,如surfacedChanged(…)和surfaceRedrawNeeded(…)。通過這種方式,應用程序仍舊以Dalvik線程運行,并享有Android應用程序框架模型的相同安全保護和優勢。

新的幫助程序庫簡化了NativeActivity的使用
谷歌創建了一個新的幫助程序庫,作為新NDK的一部分,從而又向前邁進了一步。該幫助程序可以簡化NativeActivity的使用,從而讓新開發人員可以更輕松地掌握它,并快速地在Android平臺中部署本機應用程序。該庫被定義在NDK源目錄下的android_native_app_glue.[h|c]文件中。此幫助程序庫定義了一個由開發人員執行的android_main(…)函數。android_main(…)函數旨在保持開發人員主應用程序流控制,且可由幫助程序庫通過唯一線程調用。這樣,庫即可幫助開發人員避免發生與在主NativeActivity線程中運行回調代碼相關的堵塞問題。幫助程序庫定義的android_app架構實例將被傳至android_main(…)函數。此架構包含有一個嵌入ALooper架構實例,可以支持應用程序偵聽活動生命周期事件,如“pause”或“resume”,及設備輸入事件。
 
 
圖2 - 使用NDKr5以本機代碼編寫的android_mail函數示例
 

NDK將加速平板優質內容的生產
在嘗試了新功能和提供的NativeActivity示例后,我對修訂版NDK的新式樣產生了深刻的印象。正如我們可以期待在新的一年中會有更多的Android平板設備運行2.3 (Gingerbread),我相信通過簡化潛在ARM架構的利用,在為更大屏幕的設備加速創建優質應用程序內容方面,新的NDK將會拌演重要角色。
 
趕快親身體驗吧!您現在可以從谷歌獲得NDKr5包裹、文檔及示例,有關NativeActivity的詳細信息,請參見此處。您還能從Android開發人員頁面找到許多其它Android 2.3增強內容。
本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
午夜伦欧美伦电影理论片| 奶水喷射视频一区| 亚洲激情校园春色| 久久精品国产一区二区电影 | 激情文学综合丁香| 国产亚洲视频在线| 国产永久精品大片wwwapp| 国产欧美丝祙| 国产色婷婷国产综合在线理论片a| 国产精品美女久久久久av超清 | 亚洲第一福利视频| 亚洲第一中文字幕在线观看| 韩国v欧美v日本v亚洲v| 狠狠色狠狠色综合人人| 伊人久久久大香线蕉综合直播| 国产一区二区三区在线播放免费观看 | 国产精品国产三级国产aⅴ浪潮| 欧美日韩色婷婷| 欧美日韩在线视频一区二区| 欧美日韩成人综合| 欧美日韩一区二区三区| 欧美午夜片在线免费观看| 国产精品美女久久久久久久| 国产精品久久中文| 国产亚洲一区二区三区在线观看| 国模精品娜娜一二三区| 激情亚洲成人| 亚洲品质自拍| 亚洲视频免费看| 欧美一区二区观看视频| 亚洲风情在线资源站| 91久久精品国产91久久性色| 日韩午夜av| 亚洲一区制服诱惑| 久久高清一区| 欧美r片在线| 欧美午夜精品| 国产一区二区电影在线观看| 伊人久久婷婷| 日韩视频精品| 午夜久久资源| 亚洲欧洲精品一区二区精品久久久| 日韩午夜电影| 欧美在线影院| 免费一级欧美片在线观看| 欧美色图天堂网| 国产日韩一区二区三区在线| 影音先锋久久| 在线一区观看| 亚洲第一精品在线| 亚洲视频欧美视频| 久久精品视频在线免费观看| 欧美成人日韩| 国产精品丝袜91| 亚洲国产精品成人综合| 中文网丁香综合网| 亚洲国产日韩一区| 亚洲欧美亚洲| 欧美xart系列高清| 国产精品一区在线播放| 亚洲国产三级网| 亚洲欧美日韩国产一区二区| 亚洲国产清纯| 欧美伊人久久久久久久久影院 | a4yy欧美一区二区三区| 欧美伊人久久久久久午夜久久久久 | 国产精品女主播在线观看 | 亚洲欧洲一级| 性刺激综合网| 欧美欧美全黄| 黑人操亚洲美女惩罚| 一区二区三区免费看| 亚洲国产精品va| 欧美一区2区视频在线观看| 欧美电影免费观看大全| 国产精品一区二区久久久| 亚洲电影免费观看高清| 亚洲欧美亚洲| 亚洲一区二区三区四区视频| 久久综合久久综合九色| 国产精品久久久久影院亚瑟| 亚洲高清免费视频| 久久国产一区二区| 欧美一区激情视频在线观看| 欧美日韩在线播放三区四区| 亚洲第一精品夜夜躁人人躁| 欧美一区二区三区喷汁尤物| 亚洲永久免费精品| 欧美精品国产精品日韩精品| 在线观看欧美一区| 欧美一区二区大片| 欧美一级视频精品观看| 欧美视频在线免费看| 亚洲三级电影在线观看| 亚洲国产精品99久久久久久久久| 久久www免费人成看片高清 | 亚洲第一网站| 久久成人免费| 欧美一区二区三区在线观看| 国产精品久久激情| avtt综合网| 宅男精品视频| 欧美日韩裸体免费视频| 91久久午夜| 亚洲精品久久久蜜桃| 久久手机免费观看| 国产一区二区精品久久| 亚洲欧美日韩中文视频| 亚洲欧美日韩在线| 国产精品国产一区二区| 日韩一级黄色av| 一区二区三区成人| 欧美黑人国产人伦爽爽爽| 亚洲二区免费| 日韩天堂av| 欧美日韩第一页| 亚洲美女中出| 在线综合视频| 国产精品二区二区三区| 在线视频欧美精品| 午夜精品福利在线| 国产精品一二三四| 欧美一级久久久久久久大片| 久久国产99| 韩国av一区二区三区| 久久精品亚洲一区二区三区浴池| 久久午夜电影| 亚洲国产高清在线| 99re热这里只有精品视频| 欧美日韩一区不卡| 一区二区三区视频在线观看| 亚洲一区视频| 国产欧美日本| 久久精品视频导航| 美日韩精品视频| 亚洲欧洲一二三| 亚洲一区二区三区涩| 国产精品视频内| 午夜欧美大片免费观看| 久久久91精品国产一区二区精品| 极品少妇一区二区三区| 亚洲高清在线视频| 欧美激情一二区| 一区二区三区成人| 欧美在线视屏| 永久555www成人免费| 日韩一二三区视频| 国产精品久久久久久久久借妻| 亚洲欧美三级在线| 免费短视频成人日韩| 亚洲精品久久久久久一区二区| 亚洲一区二区黄| 国产日韩欧美在线播放不卡| 亚洲国产精品电影在线观看| 欧美精品网站| 亚洲欧美一区二区三区在线| 麻豆成人在线| 9i看片成人免费高清| 久久av一区二区三区漫画| 在线观看日韩av先锋影音电影院| 99精品热视频| 国产精品有限公司| 亚洲精品久久在线| 国产精品日韩在线播放| 久久精品av麻豆的观看方式| 欧美国产精品v| 亚洲免费在线| 欧美激情第4页| 亚洲欧美激情视频在线观看一区二区三区| 久久久蜜臀国产一区二区| 亚洲精品一二三| 欧美专区日韩视频| 亚洲国产经典视频| 欧美一级成年大片在线观看| 在线观看视频日韩| 亚洲女人天堂成人av在线| 伊人男人综合视频网| 亚洲在线一区| 亚洲国产成人av好男人在线观看| 亚洲天堂成人在线视频| 狠狠综合久久| 亚洲欧美日韩一区二区在线| 亚洲国产成人tv| 欧美中文字幕视频在线观看| 亚洲精品视频在线观看网站| 久久精品在线播放| 日韩小视频在线观看专区| 久久久久国色av免费观看性色| 亚洲美女视频网| 免费av成人在线| 亚洲制服欧美中文字幕中文字幕| 欧美激情国产日韩精品一区18| 亚洲欧美一区二区在线观看| 欧美区日韩区| 亚洲国产综合在线| 国产模特精品视频久久久久| 一区二区免费在线视频| 亚洲成色精品| 久久香蕉国产线看观看av| 亚洲欧美日韩国产一区二区三区|