嗯 ... 講白話一點的話 ~ 就好比你進到電影院裡面, 按照你想看的電影與場次, 買了電影票, 然後你循著電影票上的資訊 : 場次、入場時間、哪一廳、座位號碼 ... 從進場就座到看完電影, 走出戲院. 這整個流程 ~ 你自己就好比是一個 [ 應用程式 ], 而整個電影院就好比是 [ Android 系統架構 ], 那張電影票就是 [ Manifest.xml 檔 ], 試想如果沒有遵循那張電影票上的資訊, 你在電影院內又該如何順利欣賞到電影 ? 這樣有沒有概念了呢 ? 哈哈哈 ~ 當然這只是比喻而已, 實際上還要更複雜些 ! >"<
先想像你自己是個 [ 應用程式 ], 這張就是你的電影票 ~ 哈哈哈! |
在這裡僅就其中主要的幾個部份做介紹 :
<manifest xmlns:android="http://schemas...(略)"
package="a.b.c"
android:versionCode="1"
android:versionName="1.0">
<uses-sdk android:minSdkVersion="7" />
......... (略, 內容列在下方)
</manifest>
開頭是以 <manifest> ..... 以 </manifest> 為結尾
代表此檔案為 Manifest.xml, 上述區段中包含了版本號碼之類的資訊.
<uses-sdk android:minSdkVersion="7" />
這行宣告, 表示你的應用程式適用在哪個 Android 系統版本上運作. 這個重要 ! 藉此聲明低於這個版本代號的 Android 系統就不適合安裝此應用程式囉 ! 上述的版本代號為 7 ( 對應版本實際為 2.1, 在此檔案中僅以代號表示 ) 在創建新專案時已先指定此參數了, 不需在此做更動.
下方是僅包含一個 activity 的應用程式設定檔內容 :
<application android:icon="@drawable/icon"
android:label="@string/app_name">
<activity android:name=".StrAndInt"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
開頭以 <application> .... </applicatio n> 做結尾, 表示此區段的內容與應用程式有關.
<application> ~ </application>區段內各行的簡介:
android:icon="@drawable/icon"
此應用程式的圖示
android:label="@string/app_name"
此應用程式的名稱, 由於名稱已寫入 strings.xml 檔中, 所以在此看不到 ~ 此範例的 @string/app_name 變數內容為 "StrAndInt"
<activity android:name=".StrAndInt"
activity 在程式內的名稱為 "StrAndInt", activity 可想成是應用程式的初始架構.
android:label="@string/app_name">
activity 顯示在外的名稱, 此名稱已寫入 strings.xml 中, 此變數內容是 "StrAndInt"
<intent-filter> .... </intent-filter>
定義此 activity 的性質與內容
<action android:name="android.intent.action.MAIN" />
程式的進入點 (表示開頭由此 activity 先執行)
<category android:name="android.intent.category.LAUNCHER" />
應用程式出現的位置 ... 這個用圖說明比較清楚 ~ 下面兩張圖
按下紅框處進入應用程式選單 |
在此選單中可以看見此應用程式的圖示與名稱 |
上面的 AndroidManifest.xml 檔的內容較為陽春, 這個設定檔還可定義應用程式需啟用何種服務及宣告是否擁有兩個以上的 activity (只能選一個 activity 為程式啟始點), 其他細節部份留待您自行去學習, 本文僅作簡單介紹, 內容難免粗糙及疏漏, 尚請見諒 ! .^_^.
#本文僅就 xml 檔的概念來闡述, 其他細節請自行參考相關書籍.
沒有留言:
張貼留言