二、 Android系統(tǒng)架構(gòu)
2.1 Linux內(nèi)核(Linux Kernel)
* Android運(yùn)行在linux kernel 2.6之上,但是把linux內(nèi)受GNU協(xié)議約束的部分做了取代,這樣在Android的程序可以用于商業(yè)目的。
* Linux 內(nèi)核是硬件和軟件層之間的抽象層。
2.2中間件
* 中間件包括兩部分:核心庫(kù)和運(yùn)行時(shí)(libraries & Android runtime)
* 核心庫(kù)包括,SurfaceManager 顯示系統(tǒng)管理庫(kù),負(fù)責(zé)把2D或3D內(nèi)容顯示到屏幕;Media Framework 媒體庫(kù),負(fù)責(zé)支持圖像,支持多種視頻和音頻的錄制和回放;SQlite 數(shù)據(jù)庫(kù),一個(gè)功能強(qiáng)大的輕量級(jí)嵌入式關(guān)系數(shù)據(jù)庫(kù);WebKit 瀏覽器引擎等。
* Dalvik虛擬機(jī):區(qū)別于Java虛擬機(jī)的是,每一個(gè)Android 應(yīng)用程序都在它自己的進(jìn)程中運(yùn)行,都有一個(gè)屬于自己的Dalvik 虛擬機(jī),這一點(diǎn)可以讓系統(tǒng)在運(yùn)行時(shí)可以達(dá)到優(yōu)化,程序間的影響大大降低。Dalvik虛擬機(jī)并非運(yùn)行Java字節(jié)碼,而是運(yùn)行自己的字節(jié)碼。
2.3 應(yīng)用程序框架(Application Framework)
* 豐富而又可擴(kuò)展性的視圖(Views),可以用來(lái)構(gòu)建應(yīng)用程序,它包括列表(lists),網(wǎng)格(grids),文本框(text boxes),按鈕( buttons),可嵌入的web 瀏覽器。
* 內(nèi)容提供者(Content Providers)使得應(yīng)用程序可以訪(fǎng)問(wèn)另一個(gè)應(yīng)用程序的數(shù)據(jù)(如聯(lián)系人數(shù)據(jù)庫(kù)),或者共享它們自己的數(shù)據(jù)。
* 資源管理器(Resource Manager)提供非代碼資源的訪(fǎng)問(wèn),如本地字符串,圖形,和布局文件( layoutfiles )。
* 通知管理器(Notification Manager)使得應(yīng)用程序可以在狀態(tài)欄中顯示自定義的提示信息。
* 活動(dòng)管理器( Activity Manager)用來(lái)管理應(yīng)用程序生命周期并提供常用的導(dǎo)航回退功能。
2.4 應(yīng)用程序 (Applications)
* Android 系統(tǒng)會(huì)內(nèi)置一些應(yīng)用程序包包括email 客戶(hù)端,SMS 短消息程序,日歷,地圖,瀏覽器,聯(lián)系人管理程序等。所有的應(yīng)用程序都是使用JAVA 語(yǔ)言編寫(xiě)的。
本文導(dǎo)航
- 第1頁(yè): 首頁(yè)
- 第2頁(yè): 二、 Android系統(tǒng)架構(gòu)
- 第3頁(yè): 三、 Android系統(tǒng)包說(shuō)明
- 第4頁(yè): 四、 Android項(xiàng)目工程說(shuō)明
- 第5頁(yè): 五、 基本控件[/apge]
五、 基本控件
5.1 文本框(TextView)、自動(dòng)完成(AutoCompleteTextView)
自動(dòng)完成的效果和代碼:http://android.yaohuiji.com/archives/390
5.2 編輯框(EditText)
android:hint 內(nèi)容為空時(shí)提醒的信息,如“請(qǐng)輸入”
5.3 下拉列表(Spinner)
android:entries 可以通過(guò)在strings.xml中指定string-array來(lái)設(shè)置選項(xiàng)。
5.4 進(jìn)度條(ProgressBar)
效果和代碼:http://www.eoeandroid.com/viewthread.php?tid=1081
5.5 拖動(dòng)條(SeekBar)
5.6 評(píng)分條(RatingBar)
5.7 按鈕(Button)、圖片按鈕(ImageButton)
5.8 圖片框 (ImageView)、畫(huà)廊(Gallery)
畫(huà)廊效果:http://android.yaohuiji.com/archives/565
5.9 日期和時(shí)間(DatePicker、TimePicker)
5.10 單項(xiàng)選擇(RadioGroup、RadioButton)、多項(xiàng)選擇(CheckBox)
5.11 表格 (GridView)、列表(ListView)
GridView:http://blog.csdn.net/hellogv/archive/2009/09/18/4567095.aspx
ListView:http://www.cnblogs.com/allin/archive/2010/05/11/1732200.html
5.12 對(duì)話(huà)框(AlertDialog)、對(duì)話(huà)框中的進(jìn)度條(ProgressDialog)
AlertDialog:http://android.yaohuiji.com/archives/655
ProgressDialog:http://aina-hk55hk.javaeye.com/blog/679134
5.13 菜單(Menu)
5.14 提示(Toast)
類(lèi)似于MessageBox,非模式窗口。如:
Toast.makeText(this, "信息", Toast.LENGTH_SHORT).show();
[page]六、 布局和容器
- 第6頁(yè): 七、 常用代碼
- 第7頁(yè): 八、 Adb命令行
- 第8頁(yè): 九、 Apk文件破解
- 第9頁(yè): 十、 小技巧
- 第10頁(yè): 十一、 Q & A
- 第11頁(yè): 十一、 Q & A