本文作者是AppCan平臺(tái)應(yīng)用開發(fā)總監(jiān)@AppCan朱炳芳,主要研究AppCan平臺(tái)在各個(gè)行業(yè)中的應(yīng)用,在AppCan 2.0測(cè)試階段,他就在使用AppCan 2.0開發(fā)應(yīng)用,基于實(shí)戰(zhàn)去改進(jìn)AppCan。下面是他對(duì)AppCan 2.0跨平臺(tái)移動(dòng)應(yīng)用開發(fā)的經(jīng)驗(yàn)分享。
AppCan平臺(tái)是一個(gè)Hybrid App開發(fā)平臺(tái),很多開發(fā)者一開始選擇使用AppCan,是因?yàn)樗_發(fā)出來(lái)的應(yīng)用從響應(yīng)速度上比較快,這也是我們做AppCan平臺(tái)的目的之一。AppCan是一個(gè)Hybrid App開發(fā)框架,初衷就是為了解決跨平臺(tái)開發(fā)的問題,同時(shí)又降低開發(fā)技術(shù)門檻,這是Hybrid App框架的大優(yōu)勢(shì)。 不過(guò),有些人會(huì)說(shuō)AppCan平臺(tái)開發(fā)出來(lái)的應(yīng)用沒有原生應(yīng)用效果那么精細(xì),我想是有多種原因造成的。首先,用Html網(wǎng)頁(yè)寫應(yīng)用,其效果不可能跟Native應(yīng)用一模一樣,這中間是有差異的,這個(gè)差異有多少,取決于平臺(tái)的成熟度和開發(fā)者的經(jīng)驗(yàn)。其次,很多開發(fā)者使用Web技術(shù)去開發(fā)Hybrid App,基本上沿用了以前的思路,寫一個(gè)頁(yè)面,一上來(lái)就先把jQuery庫(kù)等JS庫(kù)往里扔,這顯然是不正確的,手機(jī)的瀏覽器解析沒有PC上那么高效率,特別是在Android手機(jī)上。 AppCan平臺(tái)出來(lái)之時(shí),就伴隨著商業(yè)項(xiàng)目的開發(fā)。因此,AppCan的應(yīng)用開發(fā),是有實(shí)際項(xiàng)目經(jīng)驗(yàn)積累的,這些經(jīng)驗(yàn)積累都會(huì)總結(jié)并在新的版本中體現(xiàn)出來(lái)。比如一開始,AppCan沒有項(xiàng)目經(jīng)驗(yàn),也會(huì)想到說(shuō)推薦給開發(fā)者用jQuerymobile、Secha等框架來(lái)寫應(yīng)用布局和交互,然而經(jīng)過(guò)幾個(gè)月的項(xiàng)目經(jīng)驗(yàn)后,發(fā)現(xiàn)這些框架并不適合,因此在后續(xù)版本中推出了自有的UI框架。AppCan類似的很多機(jī)制,都是在商業(yè)項(xiàng)目中總結(jié)出來(lái)的。 AppCan平臺(tái)的多窗口特性,在1.0版本的時(shí)候,平臺(tái)規(guī)定uexWindow.open打開窗口的打開時(shí)間是250ms,而在2.0版本中,這個(gè)參數(shù)提供出來(lái),開發(fā)者可以自己定義,這樣如果要做動(dòng)畫的話,可以通過(guò)時(shí)間控制動(dòng)畫的時(shí)長(zhǎng)。在1.0版本的時(shí)候,uexWindow.open窗口是有延遲的,等到新開窗口的所有網(wǎng)頁(yè)靜態(tài)內(nèi)容加載完成后才會(huì)將窗口show出來(lái),這給用戶的感覺就是打開窗口比較慢,在2.0版本的時(shí)候,這個(gè)延遲去掉了。 AppCan平臺(tái)的浮動(dòng)窗口,替代了之前的主+輔窗口(頭部/底部窗口)的機(jī)制,用浮動(dòng)窗口去作為主窗口的一部分覆蓋在主窗口上,即可實(shí)現(xiàn)局部區(qū)域的滾動(dòng)條。而且在浮動(dòng)窗口中加了彈動(dòng)效果,在2.0版本中,彈動(dòng)效果的彈動(dòng)狀態(tài)的圖片,文字、二級(jí)文字等都是可配置的,開發(fā)者可以開發(fā)效果更好的下拉彈動(dòng)。浮動(dòng)窗口可實(shí)現(xiàn)動(dòng)畫,即數(shù)學(xué)變換,這樣可以實(shí)現(xiàn)單個(gè)或多個(gè)浮動(dòng)窗口的動(dòng)畫效果,滿足常見交互效果。很多開發(fā)者會(huì)使用iscroll.js這個(gè)庫(kù)來(lái)實(shí)現(xiàn)局部區(qū)域的滾動(dòng),其實(shí)這種實(shí)現(xiàn)本身在Android手機(jī)上性能就有些缺失,并且如果在此區(qū)域內(nèi),有input或select等輸入控件,滾動(dòng)條滾動(dòng)后,在Android的一些機(jī)器上將不會(huì)再被點(diǎn)擊上。 在很多應(yīng)用中,大家都會(huì)用到輸入框作為聊天場(chǎng)景中的輸入?yún)^(qū)域,但是在用到了浮動(dòng)窗口或者之前的輔助窗口的時(shí)候,都會(huì)碰到問題,感覺很別扭。因此在2.0版本中,封裝了輸入法控件uexEditDialog。使用此對(duì)象,能夠創(chuàng)建單獨(dú)的輸入法控件,覆蓋在view中,并且提供四種輸入鍵盤。 AppCan作為一個(gè)Hybrid 框架,可以方便的集成Native控件,在2.0版本中,專門開放了Native插件擴(kuò)展的接口。AppCan在2.0版本中,也推出了Canvas加速器,即用OpenGL重新實(shí)現(xiàn)了Canvas的接口,并且提供了畫布view和webview之間的橋接方法,這對(duì)網(wǎng)頁(yè)游戲開發(fā)者是一個(gè)非常不錯(cuò)的選擇。 AppCan在被廣大開發(fā)者使用的過(guò)程中,也被多次提到說(shuō)安裝包過(guò)大、默認(rèn)權(quán)限過(guò)多的問題,這在2.0版本也得到了解決,開發(fā)者可以自行選擇用到的控件。需要注意的是,如果應(yīng)用用到了官方封裝的zy_json.js,需要選擇uexFileMgr和uexXmlHttpMgr這兩個(gè)對(duì)象。 以上所說(shuō)的,都是開發(fā)的問題,也是開發(fā)者關(guān)心的問題。那么AppCan2.0版本到底還有什么新東西呢,在新文檔上,大家能夠看到添加了諸如uexDataAnalysis、uexWidget.getPushInfo等API,也就是統(tǒng)計(jì)和推送的功能,這是AppCan新推出的移動(dòng)應(yīng)用管理平臺(tái)MAM(Mobile Application Management)的功能,將開啟AppCan為企業(yè)提供移動(dòng)解決方案的序幕。 本文轉(zhuǎn)自HTML5中國(guó)網(wǎng)站:http://www.html5cn.org/article-3940-1.html |
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。
文章名稱:AppCan2.0跨平臺(tái)移動(dòng)應(yīng)用開發(fā)經(jīng)驗(yàn)分享-創(chuàng)新互聯(lián)
文章出自:http://www.rwnh.cn/article6/ceooig.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、網(wǎng)站營(yíng)銷、關(guān)鍵詞優(yōu)化、虛擬主機(jī)、營(yíng)銷型網(wǎng)站建設(shè)、動(dòng)態(tài)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容