TWaver - 專注UI技術

          http://twaver.servasoft.com/
          posts - 171, comments - 191, trackbacks - 0, articles - 2
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Android特性

          Posted on 2012-12-27 10:37 TWaver 閱讀(2405) 評論(3)  編輯  收藏

          Android特性

          Android是Google公司基于Linux內核的開源操作系統,主要用于移動設備,目前在智能手機市場占有重要份額。Android應用層使用Java語言開發,運行于Dalvik虛擬機,每個Android應用運行在獨立的虛擬機中,這保證了各應用間資源的保護和線程安全。

          Android架構簡圖

          Android編程方式:Java,NDK,HTML

          通常使用Java語言開發Android應用,但也可借助其他語言,如Android NDK(Native Development Kit)開發模式,可用Java調用C語言庫,此外HTML也可以包裝成Android應用。

          三種方式都有各自的特點,Java為Android原生支持的語言,便于開發本地應用,隨著Android系統的不斷優化,其效率也在不斷提升,TWaver Android就使用Java開發;Android NDK開發相對復雜,但可借助C語言的性能優勢,改善程序效率,并且C語言也具有很好的跨平臺性,在游戲領域應用普遍;而Html方式也逐漸成為趨勢,Web App可用于實現跨瀏覽器,跨平臺的應用。

          Android性能測試

          Android設備很豐富,系統升級也很頻繁,Google對Dalvik虛擬機的優化和Android應用架構的改善有長足的進步,如Android 2.1升級到2.2時引入了JIT(just in time)機制,使應用效率提升了2-4倍,而Android 4.1黃油計劃對UI流暢度也有作出了貢獻,Google的努力值得贊揚,但一方面也說明此前Android效率的低下,而未來進步的空間還有多少?我們用數據來說話。下面我們將分別在Android平板與電腦下對Android Java與Sun Java作對比測試,以了解兩者的性能差異和各自適用的場景。
          Dalvik VM與Sun Java VM的性能差異
          測試設備分別為:MacBook Pro(2.26 GHz Intel Core 2 Duo),Google Nexus 7(1.3GHz四核Tegra 3)
          軟件環境:Java 1.6.0_37和Android 4.2.1
          測試內容:包括數學運算,集合操作(List和Map操作)等基本API

          因為同為java語言,測試代碼基本一致,詳見TWaver Android Demo中的PerformanceDemo.java,這里只列出結果:

          Android 4.2.1耗時是Java 6的12 - 50倍,此外其他語言(Flex,JavaScript)在電腦上的運行效率也大大優于Nexus 7平板。

          另外看看HTML的情況,Chrome瀏覽器移動版與桌面版有四倍的差距,這基本上反映了硬件的真實水平,Android中JavaScript語言相比原生的Java性能更優,至少對于Chrome瀏覽器是如此,當然這個測試只是反映語言的基本性能,從開發的便易上看,Java還是最佳選擇。

          測試的結果表明相比PC,android設備在性能上尚有明顯差距,而Dalvik VM尚不能充分發揮硬件的性能,在開發應用時需要意識到這點,以達到用戶體驗與功能上的平衡。
          編程語言各平臺下的性能差異

          TWaver Android的定位

          TWaver圖形組件在桌面上有很多開發語言可選擇,獨移動平臺上空缺,雖然TWaver Html5也能運行在Android和iOS之上,但要達到本地應用的體驗絕非易事,TWaver Android定位于移動平臺,用于圖形化的數據展示,采用了全新設計架構,提升了UI效率,以應對移動設備自身性能的不足,全新的多點觸控交互模式,漫游操作,實現流暢的交互體驗。

          TWaver Android的數量級支持

          相比TWaver其他版本,TWaver Android架構做了變化,數據模型上提高了數倍效率,解決了Link, Group的性能問題,UI呈現上優化了延遲無效機制,交互上完全適應觸控操作,綜合測試,對于Node,Link,Group混合使用的場景,一千數量級在Nexus 7平板上可以流暢的操作,考慮到平板硬件差異和Android虛擬機的效率問題,這樣的結果還是讓人滿意的,可以有廣泛的應用場景。

          Nexus 7中,不同網元數量級下拓撲圖的加載時間對比

          TWaver Android推薦平臺

          考慮到更佳的展示效果,大屏幕或許更便于數據的圖形化展示,所以TWaver推薦使用平板,支持Android 3.0+以上版本(該版本支持Drag and Drop),實際上TWaver Android內部主要使用Nexus 7 / 10以及三星平板作開發測試與調優。當然這并不意味著TWaver Android不能用于手機或者低版本的Android設備,TWaver Android Demo在Google Nexus S手機上也可以流暢的運行,如果需要兼容Android 2.*較低版本設備,你可以申請TWaver Android的精簡版本。

          TWaver Android Demo運行于Nexus 7 和Nexus S

          評論

          # re: Android特性  回復  更多評論   

          2012-12-27 14:45 by =。=
          看了樓主的比較……決定以后隨身攜帶筆記本,拋棄電話和平板

          # re: Android特性  回復  更多評論   

          2012-12-29 13:09 by 問問
          樓主拿PC和平板做比較,真乃神人也...

          # re: Android特性  回復  更多評論   

          2013-01-02 21:45 by 昏厥
          樓主搞笑啊,這個比較有意義么?
          你除了代碼沒變,還有那么多變量要控制,包括虛擬機的實現、驅動、硬件差異,你能得出什么結論啊?

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 玛曲县| 景德镇市| 陇川县| 长葛市| 余庆县| 赞皇县| 吉隆县| 锡林郭勒盟| 永康市| 阿图什市| 乡城县| 股票| 抚松县| 开平市| 呼玛县| 米易县| 马尔康县| 阿瓦提县| 乌拉特后旗| 莲花县| 光山县| 竹溪县| 晋江市| 乐亭县| 中卫市| 类乌齐县| 陆川县| 安义县| 麦盖提县| 大邑县| 灵寿县| 金乡县| 托克托县| 白朗县| 抚顺县| 上犹县| 罗平县| 城固县| 石城县| 洪湖市| 钟祥市|