新聞中心
Android應(yīng)用程序是由java語(yǔ)言開(kāi)發(fā)的也只能用java語(yǔ)言開(kāi)發(fā),Google對(duì)Android采用了一種全面霸權(quán)式的管理,完全不是其他開(kāi)源軟件的開(kāi)發(fā)方式,一切都由Google說(shuō)了算,很多地方是壟斷形式的。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),陽(yáng)江企業(yè)網(wǎng)站建設(shè),陽(yáng)江品牌網(wǎng)站建設(shè),網(wǎng)站定制,陽(yáng)江網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷(xiāo),網(wǎng)絡(luò)優(yōu)化,陽(yáng)江網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
外界不得而知?!睕](méi)有想到,僅僅過(guò)了兩天,擔(dān)憂就變成了現(xiàn)實(shí)。Linux Kernel的維護(hù)者Greg Kroah-Hartman宣布,將Android 代碼從 Linux kernel 代碼庫(kù)中刪除。這意味著,Linux Kernel的開(kāi)發(fā)小組不認(rèn)可Android的貢獻(xiàn),兩者產(chǎn)生了沖突。消息公布以后。
外界普遍覺(jué)得驚訝和可惜。好不容易,才有了一個(gè)這么受歡迎的開(kāi)源手機(jī)系統(tǒng),應(yīng)該齊心協(xié)力、共同開(kāi)發(fā)才對(duì),為什么要“窩里斗”呢?到底是什么矛盾,使得Linux Kernel小組剔除Android代碼呢?
Greg Kroah-Hartman寫(xiě)了一篇詳細(xì)的文章,解釋這個(gè)決定。下面就來(lái)看看,他是怎么說(shuō)的,以及Android到底是一個(gè)什么樣的系統(tǒng)。在這之前,你***知道Greg Kroah-Hartman是誰(shuí)。他是目前Linux Kernel的核心開(kāi)發(fā)人員,負(fù)責(zé)stable軟件包的發(fā)布。
就是說(shuō),每一個(gè)新版本的Linux Kernel,都是經(jīng)過(guò)他的手流出來(lái)的。此外,他還負(fù)責(zé)硬件驅(qū)動(dòng)的部署。而他的手機(jī)就是HTC G1,每天都在使用。所以,他是絕對(duì)有資格談?wù)撨@個(gè)問(wèn)題的,他的看法代表了Linux社區(qū)對(duì)Android的看法。首先,他指出Android和其他的Linux發(fā)行版不一樣:
[[8939]]
這就是說(shuō),與Ubuntu、Debian、Redhat這樣的傳統(tǒng)Linux發(fā)行版相比,只有系統(tǒng)的底層結(jié)構(gòu)是一樣的,其他東西在Android 里都不一樣,尤其是程序員的編程接口是完全不同的。因此,Android應(yīng)用程序都必須重新寫(xiě)過(guò),現(xiàn)存的Linux程序無(wú)法移植上去。所以,從嚴(yán)格意義上說(shuō),Android是一種全新的系統(tǒng),它與Linux的距離,比Mac OS與Linux的距離還要遠(yuǎn)。
它解決了長(zhǎng)期令手機(jī)制造商頭痛不已的問(wèn)題:業(yè)界缺乏一個(gè)開(kāi)源的Java虛擬機(jī),以及統(tǒng)一的應(yīng)用程序接口?,F(xiàn)在,程序員只要寫(xiě)一次程序,就能在各種手機(jī)硬件平臺(tái)之上使用?!?/p>
這段話解釋了,為什么Android應(yīng)用程序,都必須用Java語(yǔ)言開(kāi)發(fā)。因?yàn)椴贿@樣做的話,沒(méi)法讓程序做到硬件無(wú)關(guān)。且慢,這真的是理由嗎?傳統(tǒng)的Linux系統(tǒng),也并不依賴特定的硬件啊!只要把源代碼根據(jù)不同的平臺(tái),分別編譯一下,同一個(gè)程序不也照樣可以在不同的硬件架構(gòu)、不同的Linux發(fā)行版中使用嗎?
這下問(wèn)題來(lái)了:如果你是硬件廠商,希望你的硬件能在 Linux kernel 下運(yùn)作,那么就必須要有驅(qū)動(dòng)程序。如果驅(qū)動(dòng)程序的程序代碼公開(kāi),等于硬件規(guī)格也公開(kāi)的差不多了。許多廠商不愿意這么做,所以就提供編好的驅(qū)動(dòng)程序,但不提供原始碼。
Android 的重點(diǎn)就是商業(yè)應(yīng)用,Google采用了一些手法來(lái)繞過(guò)這問(wèn)題。他們把驅(qū)動(dòng)程序移到 "userspace",也就是說(shuō),把驅(qū)動(dòng)程序變成在 Linux kernel 上頭跑,而不是一起跑的東西,這樣就可以避過(guò)GPL。然后,在 kernel 這邊開(kāi)個(gè)小門(mén),讓本來(lái)不能直接控制到硬件的 "userspace" 程序也可以碰得到,這樣只要把"開(kāi)個(gè)小門(mén)"的程序代碼公布就行啦?!?/p>
【編輯推薦】
- 新一代的Android手機(jī)介紹
- 深度剖析Android SDK版本介紹
- 谷歌Android手機(jī)能否站穩(wěn)中國(guó)
- PythonAndroid深度剖析Android應(yīng)用程序的四種構(gòu) 造塊
- 探秘與眾不同的Android系統(tǒng)?
新聞名稱:解析Android應(yīng)用程序構(gòu)成原理
網(wǎng)頁(yè)鏈接:http://fisionsoft.com.cn/article/cosjogo.html


咨詢
建站咨詢
