第3章 Android應(yīng)用程序模型.ppt_第1頁(yè)
第3章 Android應(yīng)用程序模型.ppt_第2頁(yè)
第3章 Android應(yīng)用程序模型.ppt_第3頁(yè)
第3章 Android應(yīng)用程序模型.ppt_第4頁(yè)
第3章 Android應(yīng)用程序模型.ppt_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、Android應(yīng)用程序模型,3G智能手機(jī)開(kāi)發(fā),1、Android虛擬機(jī)Dalvik,Dalvik和標(biāo)準(zhǔn)Java虛擬機(jī)(JVM)首要差別 Dalvik 基于寄存器,而JVM 基于棧。 基于寄存器的虛擬機(jī)對(duì)于更大的程序來(lái)說(shuō),在它們編譯的時(shí)候,花費(fèi)的時(shí)間更短。,1、Android虛擬機(jī)Dalvik,Dalvik和Java運(yùn)行環(huán)境的區(qū)別 Dalvik 經(jīng)過(guò)優(yōu)化,允許在有限的內(nèi)存中同時(shí)運(yùn)行多個(gè)虛擬機(jī)的實(shí)例, 每一個(gè)Dalvik 應(yīng)用作為一個(gè)獨(dú)立的Linux 進(jìn)程執(zhí)行。 獨(dú)立進(jìn)程可防止在虛擬機(jī)崩潰的時(shí)候所有程序都被關(guān)閉。 Dalvik 提供一個(gè)擁有較少限制許可證的平臺(tái)。,2、重要包的描述,Android.

2、app :提供高層的程序模型、提供基本的運(yùn)行環(huán)境 Android.content :包含各種的對(duì)設(shè)備上的數(shù)據(jù)進(jìn)行訪問(wèn)和發(fā)布的類 Android.database :通過(guò)內(nèi)容提供者瀏覽和操作數(shù)據(jù)庫(kù) Android.graphics :底層的圖形庫(kù),可以將它們直接繪制到屏幕上. Android.location :定位和相關(guān)服務(wù)的類 Android.media :提供一些類管理多種音頻、視頻的媒體接口 A :提供幫助網(wǎng)絡(luò)訪問(wèn)的類,超過(guò)通常的.* 接口 Android.os :提供了系統(tǒng)服務(wù)、消息傳輸、IPC 機(jī)制 Android.opengl :提供OpenGL 的工具 Avi

3、der :提供類訪問(wèn)Android 的內(nèi)容提供者 Android.telephony :提供與撥打電話相關(guān)的API 交互 Android.view :提供基礎(chǔ)的用戶界面接口框架 Android.util :涉及工具性的方法,例如時(shí)間日期的操作 Android.webkit :默認(rèn)瀏覽器操作接口 Android.widget :各種UI 元素(大部分可見(jiàn))在應(yīng)用程序的屏幕中使用,3、Android的相關(guān)文件類型,Java文件-應(yīng)用程序源文件 android 本身相當(dāng)一部分都是用java 編寫(xiě)而成 android 的應(yīng)用使用java 來(lái)開(kāi)發(fā)。 Class文件-Java編譯后的目標(biāo)文件 Google

4、使用Dalvik 來(lái)運(yùn)行應(yīng)用程序 Android的class 文件是編譯過(guò)程中的中間目標(biāo)文件,需要鏈接成dex 文件才能在Dalvik 上運(yùn)行。,4、Dex文件,Dex文件-Android平臺(tái)上的可執(zhí)行文件 Android 虛擬機(jī)Dalvik 支持的字節(jié)碼文件格式。 這種虛擬機(jī)執(zhí)行的并非Java 字節(jié)碼,而是另一種字節(jié)碼:dex 格式的字節(jié)碼。 在編譯Java 代碼之后,通過(guò)Android 平臺(tái)上的工具可以將Java 字節(jié)碼轉(zhuǎn)換成Dex 字節(jié)碼。 Dalvik VM 針對(duì)手機(jī)程式/CPU 做過(guò)最佳化,可以同時(shí)執(zhí)行許多VM 而不會(huì)占用太多Resource。,5、Apk文件,Apk文件-Andro

5、id上的安裝文件 Apk 是Android 安裝包的擴(kuò)展名,一個(gè)Android 安裝包包含了與該Android 應(yīng)用程序相關(guān)的所有文件。 apk文件將AndroidManifest.xml文件、應(yīng)用程序代碼(.dex 文件)、資源文件和其他文件打成一個(gè)壓縮包。 一個(gè)工程只能打進(jìn)一個(gè).apk文件。 apk 文件的本質(zhì)是一個(gè)zip包。,Hello world!詳解,第一個(gè)運(yùn)行程序,HelloAndroid,Eclipse自動(dòng)生成 new android project HelloAndroid,Android應(yīng)用程序結(jié)構(gòu),src源文件夾; gen保存自動(dòng)生成R資源類文件夾; assets保存原生資

6、源文件夾; res資源文件夾; AndroidManifest.xml(Android配置清單文件); perties(屬性文件);,Android應(yīng)用程序的代碼文件,HelloAndroid.java(活動(dòng)類); R.java(資源索引類); strings.xml(聲明系統(tǒng)中用到的字符串常量); 降低耦合行; 提高效率; main.xml(布局文件,聲明程序中用到的視圖組件); AndroidManifest.xml(全局配置文件,聲明用到的組件、權(quán)限、版本;,HelloAndroid.java,Java程序,package com.android.helloAndr

7、oid; import android.app.Activity; import android.os.Bundle; public class HelloAndroid extends Activity /* Called when the activity is first created. */ Override public void onCreate(Bundle savedInstanceState) super.onCreate(savedInstanceState); setContentView(R.layout.main); ,R.java,Java程序,/* AUTO-G

8、ENERATED FILE. DO NOT MODIFY. */ package com.android.helloAndroid; public final class R public static final class attr public static final class drawable public static final int icon=0 x7f020000; public static final class layout public static final int main=0 x7f030000; public static final class str

9、ing public static final int app_name=0 x7f040001; public static final int hello=0 x7f040000; ,main.xml,Xml文件, ,Resources,strings.xml,Xml文件, Hello Android, 2010. HelloAndroid ,將要顯示內(nèi)容: Hello Android, 2010.,RUN,RUN,模擬運(yùn)行,顯示內(nèi)容: Hello Android, 2010.,命令行運(yùn)行,啟動(dòng)模擬器 emulator -avd android1.6 -skin HVGA-p 連接模擬器: telnet localhost 5554 撥打電話: gsm call發(fā)送短信: sms send 138100000

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論