1. 程式人生 > >Android應用結構分析

Android應用結構分析

manifests目錄中的AndroidManifest.xml檔案是專案的系統配置檔案,或稱為清單檔案。每個Android程式都必須擁有該檔案。它為Android系統提供了啟動和執行該專案時所必需要了解的基本資訊

java的com包:該目錄是原始碼目錄,所有使用者自己新增的或者允許使用者修改的java檔案全部存放於該目錄下。如果在建立專案時,設定的包為com.hello.hesky.hello,那麼自動建立的MainActivity.java檔案就存放在該包內。程式開發人員可以根據需要,在java目錄下新增包或者新增java檔案

res目錄是資源目錄,包含本專案中所使用的全部資原始檔。新建一個專案,res目錄下會有四類子目錄:drawable、layout、mipmap 和values。

drawable:主要存放一些使用者自定義形狀和背景選擇器(Android Selector)。背景選擇器用於改變ListView或者Button等控制元件的背景顏色。

layout:存放介面佈局檔案,檔案型別為XML。Android使用XML元素設定螢幕的佈局。每個佈局檔案包含整個螢幕或部分螢幕的檢視資源。

mipmap:包含一些應用程式可以用的原生圖示檔案(*.png、*.gif、*.jpg)。google強烈建議使用mipmap存放圖片檔案。把圖片放到mipmaps可以提高系統渲染圖片的速度,提高圖片質量,減少GPU壓力。

values:存放XML格式的資源描述檔案,預設包含顏色(colors.xml)、尺寸(dimens.xml)、字串(string.xml)和樣式(styles.xml)。

values:存放XML格式的資源描述檔案,預設包含顏色(colors.xml)、尺寸(dimens.xml)、字串(string.xml)和樣式(styles.xml)。

build.gradle(Project:Hello)檔案,

repositories程式碼託管庫:設定之後可以在專案中輕鬆引用google和jcenter上的開源專案

1.資源描述檔案(values目錄中檔案) colors.xml:該檔案用於定義顏色常量

<color>:定義顏色資源的標籤。 <color name="colorPrimary">#3F51B5</color>:定義顏色常量,顏色資源名稱為“colorPrimary”,顏色值為3F51B5。 顏色值可以有RGB、RRGGBB,ARGB和AARRGGBB四種資料形式。每一種資料形式都為十六進位制,必須以“#”開頭。

1.資源描述檔案(values目錄中檔案) string.xml:該檔案用於定義和儲存專案中的字串資源

聲明瞭一個字串資源,字串的名稱為“app_name”,字串的內容為 “HelloAndroid”。Android中將字串設定為資源,目的就是為了方便實現國際化。

2.介面佈局檔案(res目錄中檔案) Android中採用XML檔案進行介面佈局,可將佈局介面的程式碼和業務邏輯控制的Java程式碼分離開來,使應用程式的結構更加簡單清晰。

AndroidManifest.xml:每個Android專案必須有的,它是整個Android應用的全域性描述檔案。 該檔案通常包括如下資訊: 應用程式的包名,該包名將會作為該應用的唯一標識。 應用程式所包含的元件,如Activity、Service、BroadcastReceiver、ContentProvider等。 應用程式相容的最低版本。 應用程式使用系統所需的許可權宣告。 其他程式訪問該程式所需的許可權宣告。 下面是一份簡單的AndroidManifest.xml清單檔案:

application元素 manifest標籤下,僅能包含一個application元素。 只要在package中實現的Activity、Service、BroadcastReceiver和ContentProvide四大元件資訊都需要在application元素下宣告。 application元素的屬性解釋如下。 android:allowBackup="true"設定允許備份檔案。 android:icon="@ mipmap/ic_launcher"定義了應用程式的圖示,@ mipmap/ic_launcher是一種資源引用方式,標誌著圖示是在存放在/res/mipmap目錄下的資原始檔,資原始檔的名稱為ic_launcher。 android:supportsRtl="true"設定應用程式可以支援RTL佈局。此屬性只有在API 17之後才生效。 android:theme="@style/AppTheme" >設定應用程式的主題是AppTheme。

activity元素 activity元素是對Activity元件的宣告。 屬性android:name定義了該Activity的名稱。該名稱可以是包含著包名的完整的類名,如android:name=" cn.edu.neusoft.helloandroid.MainActivity";也可以省略包名,簡化為android:name=".MainActivity"。 在<activity>標籤下,可以定義0個或多個<intent-filter>標籤,該標籤用於設定Intent過濾條件 <activity>標籤下的<action android:name="android.intent.action.MAIN"和<category android:name="android.intent.category.LAUNCHER" />,用於宣告本Activity是應用程式啟動後首先被執行的Activity。無論應用程式中有多少個Activity,只有一個Activity能這樣宣告。