一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

手機跨平臺方案介紹

  引述

  現(xiàn)在手機平臺種類繁多,主流平臺有Symbian、iosAndroid、WM6.5、WP7以及中國山寨機所普遍使用的MTK,展訊, MSTAR。

  作為開發(fā)者來說,特別是學(xué)生,要做一款軟件支持如上平臺,實在是一件遙不可及的事情。

  不同種類的應(yīng)用,成功的條件是不同的。有些應(yīng)用是以質(zhì)取勝的,有些應(yīng)用則在質(zhì)的同時必須要有足夠的用戶群(如LBS應(yīng)用相關(guān)),也就是量的優(yōu)勢。因此,不同應(yīng)用對于多平臺支持的需求是有差異的,這也是本文探討如何跨平臺開發(fā)的價值所在。

  跨平臺開發(fā)有許多種方式,在文獻中可查到有下列方式。

方案名稱

簡述

特點

性能

方案開發(fā)難度

使用難度

使用成本

案例

動態(tài)腳本

使用腳本語言進行動態(tài)載入或?qū)μ囟ǖ臄?shù)據(jù)格式進行解析,類似于瀏覽器工作方式:

wml

Javascript

xml表單

私有數(shù)據(jù)格式

開發(fā)快,靈活配置。性能差,表現(xiàn)形式有限

30

40

30

40

msn/fetion/qq 內(nèi)置wap瀏覽器使用服務(wù)器把網(wǎng)頁轉(zhuǎn)換成wml,客戶端進行解析展示。

移動MM使用xml進行界面定義

微軟oneapp 使用 Java script進行服務(wù)武器編寫,客戶端進行展示和交互

很多電子閱讀軟件都使用自有的格式在服務(wù)器端進行編寫,客戶端進行展示

私有跨平臺

公司內(nèi)部使用,進行很"粗略"的封裝

使用范圍受限

90

120

70

60

不公開的內(nèi)部引擎,比如Gameloft的游戲引擎

很多公司的UI引擎

針對特殊的領(lǐng)域,比如Poc(按鍵通話對講機)引擎

抽象中間件

有自己的編程標準,完善的文檔和規(guī)范化的接口

學(xué)習(xí)成本高,使用平臺所限,在不損失性能得前提下解決特定的問題

85

300

100~150

50

Nokia的Qt

沃勤的 mtk中間件

Brew 開發(fā)接口

虛擬機

使用字節(jié)碼解析執(zhí)行

開發(fā)容易,跨平臺性好,但性能差,擴展難,維護成本高

50

開源方案,自己開發(fā)成本很高

60

60

標準的j2me虛擬機

開源的llvm, eve, flash最新版使用llvm

私有的,掌上明珠自己開發(fā)了虛擬機用于開發(fā)游戲

代碼轉(zhuǎn)換

使用Java轉(zhuǎn)換成c代碼,再編譯執(zhí)行

使用標準j2me接口開發(fā),一份代碼,好維護,但目前還沒官方公開版

84

300

60

70

棱鏡方案

Fetion 3.0

正在開發(fā)的聯(lián)通應(yīng)用商店

目前都還是公司內(nèi)部使用

  備注:

  性能:我們以純本地代碼開發(fā)出來的程序性能為100做基數(shù),其他使用相對百分比。

  難度:我們以純本地代碼開發(fā)的難度100做基數(shù),其他使用相對百分比。

  棱鏡方案由北京創(chuàng)世互動總經(jīng)理張盛毅介紹,目前僅在北京創(chuàng)世互動公司內(nèi)部使用,期待盡快與眾多開發(fā)者見面。

  (1)

  我們可以看到,使用動態(tài)腳本、虛擬機及代碼轉(zhuǎn)換等方式是比較廉價的跨平臺開發(fā)方式。接下來本文將會介紹幾種跨平臺方式下進行跨平臺開發(fā)的方案。

  動態(tài)腳本

  現(xiàn)在比較火的使用動態(tài)腳本的跨平臺開發(fā)方案大部分是即基于HTML5的。事實上即對傳統(tǒng)瀏覽器的一種擴展,提供了離線瀏覽功能、對本地設(shè)備的訪問功能等。但由于大部分編碼是使用腳本語言,因此性能較低。如果做圖片處理等應(yīng)用,則缺少相應(yīng)成熟庫支持。

  RhoMobile - one codebase, everysmartphone

  基于HTML5及Ruby構(gòu)建跨平臺應(yīng)用的工具,號稱支持iPhone, Windows Mobile,RIM, Symbian and Android。同時提供開發(fā)、同步、源碼管理等全方位產(chǎn)品。具有IDE。

  然而,當仔細看開發(fā)文檔的時候,發(fā)現(xiàn)對Symbian提都不提了,實在是一件讓我的N95傷心的事情(http://docs.rhomobile.com/rhodes/introduction)。況且作者對Ruby了解甚少,也就沒有進一步嘗試。

  Appcelerator

  Appcelerator的Titanium是使用HTML、JavaScript及CSS等Web技術(shù)構(gòu)建移動(iPhone、Android及iPad)與桌面(Windows、OS X及Linux)應(yīng)用的平臺。此外,還可以使用Pythonphp及Ruby構(gòu)建Titanium的桌面應(yīng)用。這些應(yīng)用還可以交叉編譯到所有的目標平臺上。 

  (2)

  PhoneGap

  PhoneGap是一款開源手機應(yīng)用開發(fā)平臺,它僅僅只用HTML和JavaScript語言就可以制作出能在多個移動設(shè)備上運行的應(yīng)用。PhoneGap將移動設(shè)備本身提供的復(fù)雜的API進行了抽象和簡化,提供了一系列豐富的API供開發(fā)者調(diào)用,只要你會HTML和Javascript或者Java語言,就可以利用PhoneGap提供的API去調(diào)用各種功能,PhoneGap就能讓你可以制作出在各種手機平臺上運行的應(yīng)用,這對移動應(yīng)用開發(fā)者來說無疑是個福音。

   (3)

  這個對Symbian的支持也很不好,官方的Symbian demo在我的N95上無法跑。

  代碼轉(zhuǎn)換

  由于代碼轉(zhuǎn)換直接生成目標平臺的應(yīng)用程序,因此效率比較高。然而如引文中提到的,大部分項目都是私有的。

  MoSync

  MoSync是一個開源的C/C++的集成開發(fā)環(huán)境。可以簡化移動開發(fā)程序的開發(fā)難度,并且能夠大大提高移動程序開發(fā)人員的工作效率。其主要優(yōu)點:開源,跨平臺Android, j2me, Symbian等,易于移植。

   (4)

  官方的DEMO很成功的在我的手機上跑了起來,還有幾個是OPENGL的。不過極其不爽的是,對中文的支持性很糟糕。MoSync所提供的UI系統(tǒng)壓根沒考慮對中文的支持,有國人問如何顯示中文,MoSync的回復(fù)讓我感到很雷,要制作一個一個byte的中文字符字體。難道他們以為漢字是拼音么。

  不過MoSync正在做native ui的相關(guān)工作,不過,恐怕還需要相當長的時間來發(fā)展。

  虛擬機

  我認為虛擬機其實是很尷尬的,對多平臺的支持遠不如上文提到的幾個強悍,編碼過程中要考慮的也比較多。

  J2ME

  iPhone壓根不支持。Android則自己搞了套,估計合理利用設(shè)計模式,改動也不需要太大。Symbian還是對這個很友好的,WM6.5要裝虛擬機,WP7未知。

  在編碼過程中,由于J2ME也沒有為多種設(shè)備提供一個十分統(tǒng)一的訪問方式(如加速度傳感器等),所以需要考慮的事情也比較多。

  Silverlight、MonoDroid、 MonoTouch

  這個就壓根談不上跨平臺了,UI都是要各自寫一套,而且后兩者也特別臃腫。

  值得一提的是,有個基于C#的游戲引擎delta engine,可以在PC、WP7、Android及iPhone上跑。

  Skyengine

  這里介紹一下這個,其實也是最近斯凱的老大宋濤來我們天大才聽說的。之前對山寨機一直沒有關(guān)注過。

  斯凱SDK處理了MTK、展訊、MSTAR平臺的差異性,封裝了統(tǒng)一、易用、功能強大的API。功能涵蓋了圖形文字處理,聲音,文件IO,網(wǎng)絡(luò)通信等;同時完美支持THUMB指令,插件機制,圖形加速等高級特性。斯凱SDK將使你輕松開發(fā)出優(yōu)秀的OTA應(yīng)用

  開完會后過去聊,說已經(jīng)放出Android的來了,但是后來在斯凱的網(wǎng)站找也沒找到。估計還在內(nèi)部測試,不過如果要做山寨機的平臺的話,可能用這個會速度好多。

  小結(jié)

  扯這么多,最后也沒扯出個真正的Write once,run anywhere的巨無霸。開發(fā)過程中,應(yīng)該有機的選擇幾種跨平臺技術(shù),覆蓋自己所關(guān)注的平臺。

  我們的團隊近期在做一些個項目,也還在討論跨平臺的方案。我們還是比較關(guān)注手機程序的Native特性的。譬如Symbian用戶更喜歡sis,而不喜歡jar。

  總而言之,跨平臺遠沒想象中的那樣靠譜。

  引用作品

  1. 一塵. 手機跨平臺開發(fā)五大方案對比. 博客園. [鏈接] http://www.cnblogs.com/wmj/archive/2010/11/29/1891086.html.

  2. InfoQ. Aptana被Appcelerator收購. [鏈接] http://www.infoq.com/cn/news/2011/01/aptana-appcelerator.

  3. 跨平臺開發(fā):初探PhoneGap移動開發(fā)框架. [鏈接] http://mobile.51cto.com/Android-229213.htm.

  4. liuhuigx. MoSync: 跨多平臺Android, j2me, Symbian, wm的開發(fā)工具。. [鏈接] http://www.iteye.com/topic/600808.

  作者:馬昊伯

  出處:http://loning.cnblogs.com/

  個人網(wǎng)站http://loning.wiisio.com/

  本文版權(quán)歸作者和博客園共有,歡迎轉(zhuǎn)載,但未經(jīng)作者同意必須保留此段聲明,否則保留追究法律責(zé)任的權(quán)利。

it知識庫手機跨平臺方案介紹,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 国产成人在线免费 | 欧美视频色 | 91正在播放极品白嫩在线观看 | 华人亚洲欧美精品国产 | 国产欧美精品专区一区二区 | 一区 在线播放 | 日本黄色激情视频 | 激情五月六月婷婷 | 成人福利在线观看免费视频 | 国产极品麻豆91在线 | 成人小视频在线免费观看 | 色哟哟视频在线 | 97久久精品国产成人影院 | 国内精品免费一区二区观看 | 四虎影永久在线观看精品 | 午夜一级做a爰片久久毛片 午夜影院日韩 | 国产高清91 | 亚洲精品国产综合久久一线 | 在线看www免费看 | 青青国产成人久久91网站站 | 日本欧美国产精品第一页久久 | 欧美午夜性刺激在线观看免费 | 国产在线观看精品一区二区三区91 | 91嫩草视频在线观看 | 国产在线色 | 六月丁香婷婷综合 | 91城中村在线精品 | 色哟哟在线观看视频高清大全 | 成年美女黄网站色视频大全免费 | 久久婷婷成人综合色 | 国产午夜精品福利久久 | 91精品一区二区三区在线播放 | 日本一本在线视频 | 四虎在线最新永久免费 | 日韩精品一区二区三区国语自制 | 中文字幕一区二区三区在线播放 | 韩国福利影视一区二区三区 | 在线精品小视频 | 久久精品国产91久久麻豆自制 | www.夜夜操| 五月天网站最新永久网址 |