亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        兩種移動(dòng)應(yīng)用開發(fā)框架的性能測(cè)試比較

        2013-04-29 00:00:00羅圣美王蔚任文慧
        中興通訊技術(shù) 2013年3期

        摘要:文章基于PhoneGap和Titanium兩種框架的不同功能,通過共有的API進(jìn)行設(shè)備訪問、性能等一系列的測(cè)試。由測(cè)試可知PhoneGap和Titanium在不同環(huán)境背景下各有優(yōu)缺點(diǎn),但Titanium具有更加優(yōu)秀的性能和效率,而PhoneGap相對(duì)具有優(yōu)勢(shì)的跨平臺(tái)性。

        關(guān)鍵詞:移動(dòng)應(yīng)用;跨平臺(tái)框架;性能測(cè)試;PhoneGap;Titanium

        Abstract: In this paper, we describe the different functions of PhoneGap and Titanium and introduce device access tests and performance tests through the common API of these applications. The tests show that PhoneGap and Titanium have advantages and disadvantages in different environments; however, Titanium generally performs more efficiently, but PhoneGap is better in across platforms.

        Key words: mobile App; cross platform framework; performance test; PhoneGap; Titanium

        2004年以來,移動(dòng)終端由于其便攜性和多樣性,越來越多地受到人們的關(guān)注。對(duì)于移動(dòng)開發(fā)者來說,要在不同平臺(tái)上進(jìn)行移動(dòng)終端開發(fā),需要學(xué)習(xí)Python、Ruby、Java、Object-C等各種不同的開發(fā)語言,這使得他們耗費(fèi)很多時(shí)間并難以投入更多的精力到更深層次的技術(shù)研究中。

        混合應(yīng)用則可以解決這個(gè)問題,它結(jié)合了Web應(yīng)用和本地應(yīng)用的優(yōu)點(diǎn),在本地客戶端中嵌入基于Web前端技術(shù)構(gòu)造的頁面視圖?;旌蠎?yīng)用本地的部分相當(dāng)于一個(gè)框架(或容器),并且以HTML、CSS及JavaScript為核心完成編程語言的統(tǒng)一。從用戶的角度來說,混合應(yīng)用看起來像一個(gè)本地應(yīng)用;而從開發(fā)者的角度來說,開發(fā)中除了要用HTML、CSS及JavaScript技術(shù)來編寫大部分應(yīng)用程序之外,其余工作流程與本地應(yīng)用是相似的。相對(duì)于Web應(yīng)用,混合應(yīng)用的優(yōu)勢(shì)在于:本地化的框架只是作為頁面視圖的容器,在需要的時(shí)候,仍可提供硬件設(shè)備訪問控制及相關(guān)功能。技術(shù)細(xì)節(jié)方面,可以通過JavaScript經(jīng)由本地應(yīng)用框架,與硬件和操作系統(tǒng)進(jìn)行通訊,例如控制攝像頭、重力感應(yīng)等。

        在最近幾年混合跨平臺(tái)移動(dòng)應(yīng)用發(fā)展中,Titanium和PhoneGap是使用率較高、比較有代表性的開發(fā)框架。文章將主要通過對(duì)Titanium和PhoneGap在主流移動(dòng)平臺(tái)上的性能測(cè)試,詳細(xì)地對(duì)比介紹Titanium和PhoneGap之間的性能差異。

        (1)Titanium

        Titanium為Appcelerator推出的跨平臺(tái)應(yīng)用程序開發(fā)解決方案,Titanium的開發(fā)語言為JavaScript以及HTML等網(wǎng)頁標(biāo)準(zhǔn)技術(shù)。Titanium使開發(fā)者利用JavaScript編寫移動(dòng)應(yīng)用程序,并編譯成本地代碼再部署,相當(dāng)于用純JavaScript 應(yīng)用程序編程接口(API)來創(chuàng)建本地代碼。

        (2)PhoneGap

        PhoneGap利用HTML 5標(biāo)準(zhǔn)編寫移動(dòng)應(yīng)用,同時(shí)提供JavaScript 軟件開發(fā)工具包(SDK)用來訪問移動(dòng)設(shè)備的硬件功能。它是運(yùn)行在本地Web瀏覽器視圖的Web應(yīng)用程序,能夠利用HTML 5/CSS、JavaScript以及jQuery Mobile、Sencha等框架。PhoneGap支持更多平臺(tái),因?yàn)樗⒉恍枰獎(jiǎng)?chuàng)建本地代碼,并且能夠在不同平臺(tái)上部署時(shí)并不改變代碼,具有更好的代碼可重用性。同時(shí)它的本地API集非常小,因而在不同環(huán)境中移植性較好。

        1 測(cè)試方案

        PhoneGap和Titanium的測(cè)試性能對(duì)比,主要通過兩種主流的平臺(tái)進(jìn)行測(cè)試,即Android和iOS平臺(tái)。用PhoneGap和Titanium分別寫出相同的應(yīng)用(要求實(shí)現(xiàn)的兩種代碼在語義上是完全等價(jià)的),這樣近似地比較PhoneGap和Titanium兩種框架在Android平臺(tái)和iOS平臺(tái)上的性能,測(cè)試出它們的跨平臺(tái)性、程序執(zhí)行效率及性能差異。

        (1)測(cè)試方法及指標(biāo)

        PhoneGap和Titanium調(diào)用它們各自的API來實(shí)現(xiàn)功能,主要表現(xiàn)在對(duì)移動(dòng)設(shè)備的硬件訪問控制。本次測(cè)試通過兩個(gè)框架共有的功能,即對(duì)相同硬件設(shè)備的訪問速度、開啟時(shí)間以及讀寫文件時(shí)間等指標(biāo)來測(cè)試它們之間的性能差異。具體指標(biāo)包括:

        ·訪問硬件設(shè)備的功能所需時(shí)間;

        ·該功能運(yùn)行時(shí)的CPU占用率(或CPU 時(shí)間);

        ·該功能運(yùn)行時(shí)的電源消耗率。

        由于iOS平臺(tái)的特殊性,并沒有合適的測(cè)試工具與Android上的測(cè)試指標(biāo)相對(duì)應(yīng)。故在iOS平臺(tái)上只測(cè)試CPU時(shí)間,在Android平臺(tái)上綜合測(cè)試CPU占用率和電源消耗率。

        (2)測(cè)試機(jī)配置

        ·測(cè)試類型:真機(jī)測(cè)試;

        ·測(cè)試平臺(tái):Android平臺(tái)或者iOS平臺(tái);

        ·測(cè)試設(shè)備:客戶機(jī)1(小米1S(Android 4.0))、客戶機(jī)2(iTouch 4G ( iOS 6.0))。

        (3)測(cè)試工具

        由于Android平臺(tái)和iOS平臺(tái)的差異性,在測(cè)試時(shí)需要使用不同的測(cè)試工具。除了兩者在硬件設(shè)備訪問時(shí)通過編寫測(cè)試用例直接在系統(tǒng)后臺(tái)得出數(shù)據(jù)之外,Android平臺(tái)使用SSHDroid軟件通過遠(yuǎn)程登錄移動(dòng)設(shè)備,并通過top命令獲得測(cè)試中的CPU利用率,測(cè)試數(shù)據(jù)如圖1所示。

        同時(shí)我們使用“電池優(yōu)化衛(wèi)士”軟件和“GSam Battery Monitor Pro”軟件作為后臺(tái)監(jiān)測(cè)電源消耗率的測(cè)試工具。而iOS平臺(tái)使用Xcode里的“工具選項(xiàng)”測(cè)試得到CPU 時(shí)間。

        2 測(cè)試結(jié)果

        在上文提出的幾種測(cè)試指標(biāo)中,硬件設(shè)備的訪問時(shí)間比較直觀、準(zhǔn)確。相比而言CPU利用率和電源消耗率常受應(yīng)用開啟時(shí)占用CPU和電源的影響,因而我們將訪問時(shí)間作為第一測(cè)試結(jié)果進(jìn)行分析。

        (1)訪問功能測(cè)試

        編寫PhoneGap和Titanium各個(gè)測(cè)試用例,能夠具體地說明API調(diào)用之間的性能差異。對(duì)于相同的功能來說,在調(diào)用API的JS語句前后分別加上時(shí)間戳,并計(jì)算出時(shí)間戳的差值,可得出訪問時(shí)間。該過程的偽代碼如圖2所示。

        通過對(duì)各個(gè)功能點(diǎn)連續(xù)測(cè)試10次并求取平均值可以得出結(jié)果柱形圖,如圖3所示。

        通過圖4可以看出,在不同功能點(diǎn)的訪問中,Titanium有幾個(gè)硬件設(shè)備的訪問時(shí)間非常高,起伏較大,性能穩(wěn)定性不足。但是兩者在大部分測(cè)試中顯示出正常的趨勢(shì),并且Titanium普遍比PhoneGap的訪問時(shí)間短,顯示出較好的本地化性能。推測(cè)該情況的出現(xiàn)是因?yàn)門itanium擁有自己的預(yù)編譯過程,編譯成的本地代碼對(duì)于調(diào)用本地API更迅捷。

        (2)CPU占用率和電源消耗率測(cè)試

        Android中使用SSHDroid軟件獲得CPU占用率。打開設(shè)備的安全外殼協(xié)議(SSH)功能之后,設(shè)備就可以連接到PC的局域網(wǎng),并在PC上使用SecureCRT連接到設(shè)備,連接成功后在SecureCRT的命令行中運(yùn)行top命令,動(dòng)態(tài)查看進(jìn)程的CPU占用率。測(cè)試得到的結(jié)果柱形圖如圖5所示。

        利用“GSam Battery Monitor Pro”軟件和“電池優(yōu)化衛(wèi)士”軟件作為后臺(tái)監(jiān)測(cè)電源消耗率的測(cè)試工具,可以得到運(yùn)行時(shí)進(jìn)程當(dāng)前的電源消耗率。測(cè)試中對(duì)每個(gè)功能點(diǎn)進(jìn)行連續(xù)、等次、等間隔的測(cè)試,整理測(cè)試結(jié)果如圖6所示。

        通過對(duì)Android平臺(tái)上CPU占用率和電源消耗率的對(duì)比可以看出:PhoneGap和Titanium在相同的功能中所占用的CPU差距不大,兩者以基本相同的趨勢(shì)變動(dòng),但總的來說Titanium在CPU利用率方面可以略勝一籌。

        PhoneGap在電源消耗率的不同測(cè)試用例中起伏較大,并且普遍比Titanium所消耗電量大,在兩組用例中高出兩倍以上。這說明在Android平臺(tái)上,Titanium顯示出比PhoneGap更穩(wěn)定的性能。

        (3)CPU時(shí)間

        iOS的CPU測(cè)試是使用Xcode里的instruments工具完成的,在此過程中會(huì)把每一個(gè)待測(cè)功能運(yùn)行10次,以獲得平均CPU 時(shí)間,然后進(jìn)行比較分析。測(cè)試得到的結(jié)果如圖7所示。

        由圖7可看出,在iOS上Titanium所使用的CPU Time仍然比PhoneGap要少40-60%,但也不乏例外出現(xiàn),比如在第一次測(cè)試中,Titanium打開攝像頭所占用的CPU 時(shí)間就比PhoneGap明顯要多。但是在大部分測(cè)試用例中,Titanium還是表現(xiàn)出非常優(yōu)秀的性能。

        3結(jié)束語

        通過測(cè)試數(shù)據(jù)能夠反映出:如果平臺(tái)發(fā)生變化,PhoneGap性能會(huì)保持較好的穩(wěn)定性,而Titanium性能則出現(xiàn)較大起伏。從CPU占用率來看,Titanium的執(zhí)行效能較高,CPU占用率相對(duì)較低。PhoneGap的跨平臺(tái)性能較Titanium卓越,而Titanium的執(zhí)行效率較PhoneGap較高一些。這些現(xiàn)象都會(huì)與Titanium將應(yīng)用轉(zhuǎn)換成原生應(yīng)用以及PhoneGap調(diào)用手機(jī)系統(tǒng)的API這些混合跨平臺(tái)解決方案的本身機(jī)制有關(guān)??偟膩碚f,PhoneGap和Titanium在以上不同環(huán)境背景下各有優(yōu)缺點(diǎn),但Titanium具有更加優(yōu)秀的性能和效率,而PhoneGap相對(duì)具有優(yōu)勢(shì)的跨平臺(tái)性。

        參考文獻(xiàn)

        [1] Appcelerator Platform[EB/OL].http://www.appcelerator.com/

        [2] PhoneGap Build is out of Beta [EB/OL].http://www.phonegap.com/

        [3] Rhodes[EB/OL].http://www.motorola.com/Business/US-EN/RhoMobile+Suite/Rhodes

        [4] appMobi[EB/OL]. http://www.appmobi.com

        [5] 跨平臺(tái)移動(dòng)開發(fā)工具:PhoneGap與Titanium全方位比拼(3)[EB/OL].

        http://mobile.51cto.com/web-338270_2.html

        不卡的av网站在线观看| 手机看片久久第一人妻| 国产精品内射久久一级二| 成人午夜特黄aaaaa片男男| 无码av免费精品一区二区三区| 18禁男女爽爽爽午夜网站免费| av天堂精品久久久久| 亚洲AV永久青草无码性色av| 欧美—iGAO视频网| 成人亚洲av网站在线看| 美女视频一区二区三区在线 | 日本免费在线不卡一区二区| 女人张开腿让男人桶爽| 少妇仑乱a毛片| 国产精品免费久久久久影院 | 国产肉体xxxx裸体137大胆| 国产又滑又嫩又白| 四虎永久在线精品免费观看地址| 日韩欧美精品有码在线观看| 久久精品亚洲熟女九色| 白白色发布会在线观看免费| 成人国产精品一区二区网站公司 | 蜜桃18禁成人午夜免费网站| 无码人妻丰满熟妇啪啪网站| 亚洲av无码一区二区三区四区| 亚洲av成人一区二区三区网址 | 久久久久亚洲精品美女| 一本之道加勒比在线观看| 国产国拍精品亚洲av在线观看| 国产极品女主播国产区| 免费国产黄网站在线观看| 久久免费大片| 日本一区二区三区资源视频| 国产亚洲中文字幕一区| 日本动漫瀑乳h动漫啪啪免费| 婷婷成人基地| 日本高清一区二区不卡视频| 日本一区二区三区精品不卡| 国产成人精品无码片区在线观看| 欧美黑人xxxx又粗又长| 在线观看欧美精品|