連線:Android發(fā)展速度過(guò)快令開(kāi)發(fā)商擔(dān)憂
掃描二維碼
隨時(shí)隨地手機(jī)看文章
11月17日《連線》文章指出,在發(fā)布了一年時(shí)間之后,谷歌的開(kāi)源Android操作系統(tǒng)如今已經(jīng)成為一個(gè)能夠引起市場(chǎng)轟動(dòng)的產(chǎn)品。經(jīng)過(guò)了較慢的初期發(fā)展階段,現(xiàn)在至少有12款手機(jī)在使用Android系統(tǒng),而且還有更多的手機(jī)將會(huì)使用它。
這對(duì)于Android的愛(ài)好者來(lái)說(shuō)是個(gè)好消息嗎?某些開(kāi)發(fā)商認(rèn)為這其實(shí)不是好消息。他們說(shuō),目前依然存在的許多問(wèn)題讓管理Android應(yīng)用變成了一場(chǎng)噩夢(mèng),比如Android系統(tǒng)包括1.5、1.6和2.0三個(gè)不同的版本,對(duì)應(yīng)的手機(jī)常規(guī)固件也有三個(gè)版本,不同型號(hào)手機(jī)之間的硬件差異也令人頭疼。
對(duì)于用戶們來(lái)說(shuō),這意味著網(wǎng)絡(luò)商店中銷售的應(yīng)用軟件存在著許多漏洞,那些應(yīng)用軟件也許不能在他們的手機(jī)上運(yùn)行,也許即使勉強(qiáng)能夠使用,用起來(lái)也會(huì)感覺(jué)很不舒服。開(kāi)發(fā)商們說(shuō),不知不覺(jué)中,背端系統(tǒng)的復(fù)雜性越來(lái)越強(qiáng),它們很可能會(huì)令那些應(yīng)用軟件獲得很差的名聲,對(duì)于小型企業(yè)來(lái)說(shuō),那可能是致命的打擊。
專注于Android應(yīng)用開(kāi)發(fā)的Froogloid的聯(lián)合創(chuàng)始人ChrisFagan說(shuō):“我們發(fā)現(xiàn),我們的主要精力沒(méi)法放在應(yīng)用軟件的升級(jí)上,而是必須讓應(yīng)用軟件能夠在不同版本的Android系統(tǒng)上運(yùn)行以及支持各種不同的硬件。我們并不是說(shuō)Android系統(tǒng)不該向前發(fā)展,但是目前的狀況對(duì)于小開(kāi)發(fā)商或者新入行的Android開(kāi)發(fā)商來(lái)說(shuō),確實(shí)是非常頭疼。”
Java在上個(gè)世紀(jì)九十年代也遇到了類似的問(wèn)題。這些軟件原本是為了讓開(kāi)發(fā)商更便于開(kāi)發(fā)能夠在任何一臺(tái)電腦上運(yùn)行的應(yīng)用軟件,即“一次編寫,處處運(yùn)行”;但是開(kāi)發(fā)商們發(fā)現(xiàn)Java虛擬機(jī)的變體以及相關(guān)硬件過(guò)多,反而造成了“一次編寫,處處調(diào)試”的結(jié)果。雖然Java仍在使用,尤其是應(yīng)用于移動(dòng)領(lǐng)域,但它并不能象最初設(shè)想的那樣成為跨越平臺(tái)的萬(wàn)能開(kāi)發(fā)語(yǔ)言。
移動(dòng)應(yīng)用分析公司Flurry的業(yè)務(wù)發(fā)展副總裁SeanGalligan表示,其他開(kāi)發(fā)商也提出了Android系統(tǒng)版本和相關(guān)硬件種類過(guò)多的問(wèn)題。
Galligan說(shuō):“毫無(wú)疑問(wèn),我們將開(kāi)始聽(tīng)到開(kāi)發(fā)商的抱怨。Android的發(fā)展非常迅猛,它有很多令人驚喜的東西,但是也還有很多工作要做,尤其是對(duì)于中小型開(kāi)發(fā)商而言更是如此。”
自從宏達(dá)電子推出全球第一款基于Android操作系統(tǒng)的智能手機(jī)G1,其他許多不甘落后的手機(jī)廠商也已經(jīng)推出了或即將推出基于Android系統(tǒng)的手機(jī)。僅僅是宏達(dá)電子一家廠商就已經(jīng)推出了5款A(yù)ndroid手機(jī),其他一些手機(jī)廠商如摩托羅拉甚至完全轉(zhuǎn)到了Android平臺(tái)。在過(guò)去的兩個(gè)月里,摩托羅拉發(fā)布了兩款基于Android系統(tǒng)的新手機(jī),即Cliq和Droid。為了讓自己的產(chǎn)品與眾不同,手機(jī)廠商們開(kāi)發(fā)出各不相同的用戶界面,比如HTCSense、MotorolaBlur和Rachael UI。
各家廠商推出的Android手機(jī)在硬件配置上也存在很大的差異。比如,有些Android手機(jī)配備了照相機(jī)閃光燈,有些Android手機(jī)配備了硬件鍵盤,而另外一些Android手機(jī)則沒(méi)有配備閃光燈或硬件鍵盤。
Fagan說(shuō):“你或許可以開(kāi)發(fā)出一款能夠完美兼容這三個(gè)固件的應(yīng)用軟件,但是當(dāng)你在運(yùn)營(yíng)商的ROMs上運(yùn)行它的時(shí)候,它卻完全不能運(yùn)行了。因此,我們發(fā)現(xiàn)我們開(kāi)發(fā)的應(yīng)用軟件必須能夠兼容多種固件、多種ROMs和不同硬件配置的多種設(shè)備。”
這與iPhone平臺(tái)形成了鮮明的對(duì)比。蘋果牢牢地控制著新版iPhone和操作系統(tǒng)升級(jí)的發(fā)布。從2007年第一臺(tái)iPhone問(wèn)世到現(xiàn)在,蘋果一共只推出了3款iPhone。所有的iPhone用戶都可以迅速對(duì)手機(jī)升級(jí),使用同一個(gè)版本的操作系統(tǒng)。
雖然蘋果通過(guò)iPhone首創(chuàng)了應(yīng)用網(wǎng)店的想法,但是Android也推出了銷售第三方應(yīng)用軟件的類似網(wǎng)店AndroidMarket。與蘋果的應(yīng)用網(wǎng)店不同,Android開(kāi)發(fā)商在AndroidMarket發(fā)布應(yīng)用軟件時(shí)無(wú)需經(jīng)過(guò)審批過(guò)程?,F(xiàn)在,AndroidMarket大約有1萬(wàn)應(yīng)用軟件,而蘋果的AppStore大約有10萬(wàn)應(yīng)用軟件。
對(duì)于開(kāi)發(fā)商們來(lái)說(shuō),雖然蘋果的專制控制令人反感得很,但是他們?cè)贏pp Store上發(fā)布應(yīng)用軟件可以獲得更高的收益。
Fognl的所有者KellySchrock在AndroidMarket上發(fā)布了3款應(yīng)用軟件,他說(shuō):“蘋果牢牢地控制著它們能夠做些什么,這樣做具有一定的優(yōu)勢(shì)。IPhone開(kāi)發(fā)商不用擔(dān)心版本不兼容的問(wèn)題,為iPhone開(kāi)發(fā)應(yīng)用軟件也相對(duì)容易一些。”
Froogloid幾乎是在首款A(yù)ndroid手機(jī)上市銷售的同時(shí)創(chuàng)立的,如今它的3款應(yīng)用軟件即a2b、KeyRing和CowPotato已經(jīng)擁有超過(guò)10萬(wàn)的用戶。但是隨著Android系統(tǒng)的發(fā)展,管理這些應(yīng)用軟件變得越來(lái)越困難。
Fagan說(shuō),基于Android系統(tǒng)的硬件設(shè)備的多樣性引發(fā)了許多意料之外的結(jié)果。
例如,SprintHTCHero在發(fā)布時(shí),它的GPS設(shè)置是關(guān)閉的。用戶在使用手機(jī)的時(shí)候,a2b應(yīng)用軟件會(huì)激活GPS功能,但是Froogloid很快發(fā)現(xiàn)他們使用的標(biāo)準(zhǔn)指令在Hero上獲得的反饋信息與在其他Android手機(jī)上獲得的反饋信息是不同的。ChrisPick說(shuō),手機(jī)沒(méi)有啟動(dòng)GPS設(shè)置,而是關(guān)閉了“屏幕解鎖模式”設(shè)置。他要求Froogloid在他們的應(yīng)用軟件中為具體設(shè)備編寫自定義碼。
谷歌表示,它已經(jīng)推出了仿真程序,允許開(kāi)發(fā)商在模擬設(shè)備上測(cè)試它們開(kāi)發(fā)的應(yīng)用軟件,這樣它們就可以知道應(yīng)用軟件是如何運(yùn)行的。
但是Fagan認(rèn)為,這種辦法并不總是有效。他說(shuō):“從某種意義上來(lái)說(shuō),我們過(guò)于相信仿真程序了,因?yàn)槲覀儾⒉恢缿?yīng)用軟件在設(shè)備上到底是如何運(yùn)行的。”
Pick解釋說(shuō),例如Cowpotato可以在仿真程序上順利運(yùn)行,但是在摩托羅拉的Droid手機(jī)上運(yùn)行時(shí)就會(huì)崩潰。Pick懷疑Droid手機(jī)的顯卡啟動(dòng)程序中存在一個(gè)漏洞。他說(shuō),他可以專門編寫一個(gè)補(bǔ)丁來(lái)解決這個(gè)問(wèn)題,但是這并非最佳解決方案。
Pick說(shuō):“當(dāng)我們不得不在應(yīng)用軟件代碼中編寫基于手機(jī)型號(hào)的規(guī)則時(shí),我們的軟件代碼中就會(huì)增加更多的代碼,這樣就增加了我們的工作量,同時(shí)也讓應(yīng)用軟件變得臃腫不堪。”
操作系統(tǒng)版本的不同意味著新功能不一定能夠被成功添加。Schrock說(shuō),了解這些變化并讓應(yīng)用軟件向后兼容需要一定的時(shí)間。他說(shuō):“支持所有版本的操作系統(tǒng)就需要多花好幾倍的時(shí)間和精力。”
另一個(gè)更嚴(yán)重的問(wèn)題是固件定制化的問(wèn)題。例如,谷歌提供了一個(gè)用Android代碼編寫的基本主顯示屏。但是設(shè)備廠商或網(wǎng)絡(luò)運(yùn)營(yíng)商總是會(huì)修改那個(gè)主顯示屏。有些那些修改很輕微,比如用灰色替換白色,或用換色替換紅色。那樣可以讓手機(jī)廠商和運(yùn)營(yíng)商將Android調(diào)整得更方便用戶使用。[!--empirenews.page--]
Fagan說(shuō):“雖然改變不是很大,但是當(dāng)他們開(kāi)始從根本上改變特定活動(dòng)是如何被控制的時(shí)候,它就會(huì)給基于最新版本的固件或使用最新軟件開(kāi)發(fā)工具來(lái)開(kāi)發(fā)應(yīng)用軟件的開(kāi)發(fā)商們帶來(lái)很多麻煩。
開(kāi)發(fā)商們將不得不作出艱難的抉擇,選擇他們希望瞄準(zhǔn)的目標(biāo)和他們想要支持的操作系統(tǒng)版本。
他說(shuō):“開(kāi)發(fā)商們必須判斷出哪些設(shè)備和哪家運(yùn)營(yíng)商具有更強(qiáng)的競(jìng)爭(zhēng)力,然后再針對(duì)那些設(shè)備和運(yùn)營(yíng)商開(kāi)發(fā)應(yīng)用軟件。”
Schrock說(shuō),沒(méi)有足夠的員工,他是無(wú)法同時(shí)支持四個(gè)不同版本的Android操作系統(tǒng)的。
Schrock說(shuō):“為Android系統(tǒng)開(kāi)發(fā)應(yīng)用軟件的風(fēng)險(xiǎn)越來(lái)越大,雖然開(kāi)發(fā)成本還不至于呈4倍得增加,但是也會(huì)有許多工作要做。”他不想作可能令其應(yīng)用軟件用戶數(shù)量減少的艱難抉擇。
他說(shuō):“我必須判斷我能從中獲得多少收益,然后再?zèng)Q定是否值得那么做。”