Android多媒體主要包括:平台由作業系統、中介軟體、使用者介面和應用軟體組成,許多手機廠商都在紛紛的想用這個作業系統,畢竟這款作業系統在市場上還是佔一席之地的吧。
HTC(宏達電 多普達)、摩托羅拉、索愛、三星等眾多公司紛紛推出基於Android智能作業系統,甚至很多迷你筆記型電腦也使用Android作業系統。目前Android是最熱門的智能作業系統,憑藉Linux的軟體優勢其應用的廣泛程度已經讓其他對手相形見絀。所以學習Android作業系統具有巨大的意義。
各種庫Libraries)和Android 運行環境RunTime)本層次對應一般嵌入式系統,相當於中介軟體層次。Android的本層次分成兩個部分一個是各種庫,另一個是Android 運行環境。本層的內容。
大多是使用C++實現的。在其中,各種庫包括:C庫 :C語言的標準庫,這也是系統中一個最為底層的庫,C庫是通過Linux的系統調用來實現。多媒體架構MediaFrameword):
這部分內容是Android多媒體的核心部分,基於PacketVideo即PV)的OpenCORE,從功能上本庫一共分為兩大部分,一個部分是音頻、視頻的回放PlayBack),另一部分是則是音視頻的紀錄Recorder)。
SGL:2D映像引擎。SSL:即Secure Socket Layer位於TCP/IP協議與各種應用程式層協議之間,為資料通訊提供安全支援。OpenGL ES 1.0 :本部分提供了對3D的支援。介面管理工具Surface Management):本部分提供了對管理顯示子系統等功能。
SQLite:一個通用的嵌入式資料庫WebKit:網路瀏覽器的核心FreeType:位元影像和向量字型的功能。Android多媒體的各種庫一般是以系統中介軟體的形式提供的,它們均有的一個顯著特點就是與行動裝置的平台的應用密切相關。
Android 運行環境主要指的虛擬機器技術——Dalvik。Dalvik虛擬機器和一般JAVA虛擬機器Java VM)不同,它執行的不是JAVA標準的位元組碼bytecode )而是Dalvik可執行格式.dex)中執行檔案。
在執行的過程中,每一個應用程式即一個進程Linux的一個Process)。 二者最大的區別在於Java VM是以基於棧的虛擬機器Stack-based)。而Dalvik是基於寄存器的虛擬機器Register-based)。顯然,後者最大的好處在於可以根據硬體實現更大的最佳化,這更適合行動裝置的特點。
- 學習Android作業系統時相關注意事項
- 詳細介紹Android J2ME程式操作
- 怎樣進行Android UI元素設計
- GoogleAndroid作業系統全講析
- 闡述Android apk格式說明
現有程式設計語言均未專門對多核處理器進行最佳化。派克表示,Go就是Google工程師為這類程式編寫的一種語言。它不是針對編程初學者設計的,但學習使用它也不是非常困難。Go支援物件導向,而且具有真正的封裝(closures)和反射(reflection)等功能。在學習曲線方面,派克認為Go與Java類似,對於Java開發人員來說,應該能夠輕鬆學會Go。
之所以將Go作為一個開源項目發布,目的是讓開源社區有機會建立更好的工具來使用該語言,例如Eclipse IDE中的外掛程式。目前還沒有支援Go的IDE。在目前Google公開發布的所有網路應用中,均沒有使用Go。但是Google已經使用該語言開發了幾個內部項目。
派克表示,Go是否會對Google即將推出的Chrome OS產生影響,現在還言之尚早,不過Go的確可以和Native Client配合使用。他表示,“Go可以讓應用完美的運行在瀏覽器內。”例如,使用Go可以更高效的實現Wave,無論是在前端還是後台。
Go 同時具有兩種編譯器,一種是建立在GCC基礎上的Gccgo,另外一種是分別針對64位x86和32位x86電腦的一套編譯器(6g和8g)。Google目前正在研發其對ARM晶片和Android裝置的支援。派克表示,“Android多媒體存在的問題是,我們一直沒有一個數字副處理器。”