女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀] 在初見(jiàn) Intent一章中,我們已嘗試過(guò)使用 「startActivity」函式,傳入適當(dāng)?shù)摹窱ntent」,來(lái)呼叫瀏覽器的 Activity。到目前為止,我們可以由學(xué)習(xí) Android 應(yīng)用程式的經(jīng)驗(yàn)中

 在初見(jiàn) Intent一章中,我們已嘗試過(guò)使用 「startActivity」函式,傳入適當(dāng)?shù)摹窱ntent」,來(lái)呼叫瀏覽器的 Activity。

到目前為止,我們可以由學(xué)習(xí) Android 應(yīng)用程式的經(jīng)驗(yàn)中歸納得出:所有 Android 程式的運(yùn)作流程,都定義在 Activity 中。

Android 系統(tǒng)與其他系統(tǒng)很不一樣的地方是:它的應(yīng)用程式並不直接與底層系統(tǒng)緊密結(jié)合,而是跑在 Android 框架中。這意思是設(shè)計(jì) Android 應(yīng)用程式時(shí),我們並不需要關(guān)心實(shí)際上運(yùn)作的機(jī)器是哪一牌的手機(jī)或是哪一種嵌入式系統(tǒng),或使用哪一種架構(gòu)(ARM、x86、MIPS)。我們要關(guān)心的只有Android 框架提供了那些功能,好讓我們能操作這臺(tái)設(shè)備。具體來(lái)說(shuō)就是我們只要知道這臺(tái)機(jī)器的螢?zāi)淮笮?、有沒(méi)有鍵盤(pán),有沒(méi)有支援 GPS 等等訊息,就知道我們寫(xiě)的應(yīng)用程式是否能在這臺(tái)機(jī)器上順暢地運(yùn)作。Android 框架與底層系統(tǒng)的整合的問(wèn)題完全可以留給軔體工程師來(lái)操心。

在執(zhí)行「startActivity」函式時(shí),應(yīng)用程式並不是直接呼叫另一個(gè) Activity,而是將「Intent」(意圖)傳進(jìn) Android 框架中。 Android 框架會(huì)查看 「startActivity」 呼叫所傳入的動(dòng)作與 Intent 內(nèi)容是否在註冊(cè)表中,如果符合,就啟動(dòng)對(duì)應(yīng)的服務(wù)或 Activity。

Android 系統(tǒng)中的每一個(gè)應(yīng)用程式,在安裝的過(guò)程裡,都得事先在 Android 框架中註冊(cè)、登記這個(gè)應(yīng)用程式所建立的 Activity,並事先註明會(huì)使用到的服務(wù)。譬如當(dāng)我們?cè)?Android 上安裝我們撰寫(xiě)的 BMI 應(yīng)用程式時(shí),BMI 應(yīng)用程式就會(huì)向 Android 框架登記相關(guān)資訊:BMI 應(yīng)用程式將會(huì)用到 「Bmi」這個(gè) Activity。

這份訊息存在於每個(gè) Android 應(yīng)用程式專(zhuān)案根目錄下的「AndroidManifest.xml」檔案中。如果我們?cè)诔淌窖e,要用到其他應(yīng)用程式或服務(wù)所提供的功能,也需一併在此列出。

在安裝應(yīng)用程式的時(shí)候,Android 框架會(huì)根據(jù)應(yīng)用程式提供的這份清單,將資訊註冊(cè)於 Android 框架的註冊(cè)表中。

備註:

這麼說(shuō)其實(shí)是不太精確的。Android 應(yīng)用程式的運(yùn)作流程,存在於四種載體中:

Activity (活動(dòng))

Broadcast Intent Receiver

Service

Content Provider

各種載體的相關(guān)內(nèi)容會(huì)在後續(xù)章節(jié)提到時(shí)作解說(shuō)。

預(yù)設(shè)的 Activity 清單AndroidManifest.xml」檔案。切換到「AndroidManifest.xml」分頁(yè)標(biāo)籤,查看預(yù)設(shè)的 「BMI/AndroidManifest.xml」檔案原始碼:

我們使用 eclipse Android 開(kāi)發(fā)工具打開(kāi)「BMI/

1 2 6 7 8 9 10 11 12 13 14 15

我們分行講解如下:

....

「AndroidManifest.xml」這個(gè)檔案也是以 XML 格式描述,每個(gè) Android 應(yīng)用程式都需要一個(gè)「AndroidManifest.xml」檔案,每份「AndroidManifest.xml」檔案的開(kāi)頭都會(huì)出現(xiàn)這段敘述。而整個(gè)「AndroidManifest.xml」檔案的敘述,都包含在「manifest」(清單)這個(gè)主要標(biāo)籤中。

package="com.demo.android.bmi"

「package」 是「manifest」(清單)標(biāo)籤的一個(gè)特別屬性,範(fàn)例中的內(nèi)容可用來(lái)標(biāo)明,這個(gè)應(yīng)用程式的進(jìn)入點(diǎn)存在於「com.demo.android.bmi」這個(gè)名稱(chēng)空間/路徑中。

android:versionCode="1"android:versionName="1.0"

「android:versionCode」和「android:versionName」是應(yīng)用程式版本號(hào)。 這兩個(gè)屬性是可選的(非必要)。 「android:versionName」是給使用者看的版本號(hào),如「1.0」、「2.0」。「android:versionCode」則是開(kāi)發(fā)者用的內(nèi)部版本號(hào),一般使用流水號(hào)。

...

「manifest」標(biāo)籤中主要包含一個(gè)「application」標(biāo)籤(備註1)?!竌pplication」標(biāo)籤裡面,定義了所有這個(gè)應(yīng)用程式用到的 Activity、服務(wù)等資訊。「application」標(biāo)籤中的「android:icon」屬性,定義了這個(gè)應(yīng)用程式將顯示在 Android 主畫(huà)面中的應(yīng)用程式圖示?!竌ndroid:icon="@drawable/icon"」表示應(yīng)用程式圖示的資源檔存在於 「res/drawable/icon」 中。圖示的大小必須超過(guò) 64x64 像素(Pixel)?!竌pplication」標(biāo)籤中的「android:label」屬性可用來(lái)指定應(yīng)用程式將顯示在 Home 主畫(huà)面上的名稱(chēng)。也就是預(yù)設(shè)剛開(kāi)好機(jī)時(shí),可以從桌面下方拉出的應(yīng)用程式列表。

...

「application」標(biāo)籤中所有用到的 Activity ,都要包含在一個(gè)個(gè)「activity」標(biāo)籤中(備註2)。 Activity 是 Android 應(yīng)用程式與使用者互動(dòng)的主要元素,當(dāng)使用者開(kāi)啟一個(gè)應(yīng)用程式,第一個(gè)看到的畫(huà)面就是一個(gè) Activity。若是一個(gè)應(yīng)用程式中包含多個(gè)畫(huà)面時(shí),會(huì)定義多個(gè)不同的 Activity,我們也必須在「application」標(biāo)籤中,使用多個(gè)「activity」標(biāo)籤,為不同的 Activity 添加描述。如果我們已經(jīng)在程式碼中定義好了 Activity ,卻忘了在「AndroidManifest.xml」檔案中加入對(duì)應(yīng)的「activity」標(biāo)籤,那麼在執(zhí)行中呼叫到這個(gè) Activity 的時(shí)候,將無(wú)法開(kāi)啟這個(gè) Activity。

「activity」標(biāo)籤的「android:name」屬性,指出了這個(gè) Activity 所對(duì)應(yīng)的類(lèi)別(class)?!竌ctivity」標(biāo)籤中的「android:label」屬性可用來(lái)指定應(yīng)用程式將顯示在 Activity 畫(huà)面上方的名稱(chēng)。也可以在程式碼中透過(guò)「setTitle(“名稱(chēng)”)」來(lái)動(dòng)態(tài)修改。[!--empirenews.page--]

因?yàn)樵谏弦粚印窶anifest」標(biāo)籤屬性中已經(jīng)定義了「package="com.demo.android.bmi"」,因此在「activity」標(biāo)籤的 「android:name」屬性中,「.Bmi」代表著「com.demo.android.bmi.Bmi」的簡(jiǎn)寫(xiě)。也可以寫(xiě)成「Bmi」,一樣是代表「com.demo.android.bmi.Bmi」這個(gè)類(lèi)別。

「intent-filter」標(biāo)籤定義了這個(gè)「activity」的性質(zhì)。 「intent-filter」中主要包含了兩個(gè)標(biāo)籤:「action」跟「category」標(biāo)籤。 「action」標(biāo)籤中的「android:name」屬性,其內(nèi)容「android.intent.action.MAIN」表示:這個(gè) Activity 是此應(yīng)用程式的進(jìn)入點(diǎn)(就像程式中常見(jiàn)的 main 主程式),開(kāi)啟這個(gè)應(yīng)用程式時(shí),應(yīng)先執(zhí)行這個(gè) Activity。 。常見(jiàn)的還有「android.intent.action.EDIT」等標(biāo)籤,會(huì)在之後章節(jié)用上的時(shí)候講解。「category」標(biāo)籤中的「android:name」屬性,其內(nèi)容「android.intent.category.LAUNCHER」表示:這個(gè) Activity 將顯示在 Launcher 的應(yīng)用程式列表中。

我們把整個(gè)檔案合到一起看,可以總結(jié)出這個(gè)檔案所傳達(dá)的訊息:在「com.demo.android.bmi」路徑下的「Bmi.java」這個(gè)檔案中,已定義了一個(gè)主要的 Activity; 當(dāng)我們打開(kāi) Android 的時(shí)候,顯示的是位於「res/drawable/icon」的圖示。一旦我們按下圖示來(lái)啟動(dòng)這個(gè)應(yīng)用程式,Android 應(yīng)用程式框架會(huì)去尋找到定義了「android.intent.action.MAIN」內(nèi)容的 「.Bmi」activity,並呼叫執(zhí)行。

Android SDK 1.1 版之後引入了這條敘述。透過(guò)指定這個(gè)參數(shù),系統(tǒng)可以依此辨別應(yīng)用程式是否使用相容的 SDK 版本,好決定能否在這臺(tái)機(jī)器上安裝執(zhí)行。「1」代表 Android SDK 1.0,「2」代表 SDK 1.1,「3」代表 SDK 1.5。這也是一個(gè)可選填的選項(xiàng)。但如果我們的應(yīng)用程式要發(fā)佈出去,一些強(qiáng)勢(shì)的通路如 Google Android Market 已規(guī)定所有新發(fā)佈的應(yīng)用程式必須指定「android:minSdkVersion」這個(gè)參數(shù)。

備註1

除了「application」標(biāo)籤外,還有「uses-permission」(例如允不允許存取SMS、能否存取聯(lián)絡(luò)簿、相機(jī)功能)、「permission」、「instrumentation」等主要標(biāo)籤。相關(guān)的內(nèi)容在後續(xù)章節(jié)用到時(shí)再一併解說(shuō)。

備註2

除了「activity」標(biāo)籤外,對(duì)應(yīng)於 Android 應(yīng)用程式的運(yùn)作流程,還有「service」、「receiver」、「provider」等主要元件。相關(guān)內(nèi)容會(huì)在後續(xù)章節(jié)提到時(shí)作解說(shuō)。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專(zhuān)欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶(hù)體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(chē)(EV)作為新能源汽車(chē)的重要代表,正逐漸成為全球汽車(chē)產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車(chē)的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車(chē)的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車(chē) 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車(chē)場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周?chē)娮釉O(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉