Android應用程式結構分析
由於是初學者,對於Android應用程式的結構的認識是一窮二白的,對於開發Android應用程式,必須先瞭解其程式的結構和作用。一下就用一個簡單的例子來解剖:
從的程式來看,主要的檔案有一下幾個:
HelloActitity.java
HelloActitity.是繼承Actitity基類的,其主要功能就相當於介面檔案,用來將資料和和介面顯示給使用者,是使用者互動的第一入口。以下是其檔案的代碼結構:
可以看出,它有兩個方法,onCreate(Bundle saveInstanceState)和onCreateOptionsenu(Menu menu)。
當HelloActivity.java檔案載入的時候,首先是調用onCreate(Bundle savedInstanceState)方法。而其中super.onCreate(saveInstanceState)是調用父類Activity的onCreate方法;而setContentView(R.layout.activity_hello)是給Activity 設定可視視圖,視圖由R類來尋找。
res檔案夾,laout中的activity_hello.xml,values中的string.xml,styles.xml,dimens.xml
res檔案夾是負責整個應用的資源檔的存放和管理,其中activity_hello.xml是HelloAtivity面板的視圖設定,其代碼如下:
Activity_hello.xml是一個xml檔案,利用xml控制案頭應用時比較少見的,而在網頁上是經常發生的。從以上的代碼可以看出,程式的介面是線性布局的(LinearLayout)和一個文字框(TextView)所組成的。Res的檔案夾的其他檔案也是香港的資源描述。
AndroidManifest.xml
每個應用程式都會有AndroidManifest.xml檔案,該檔案向Android系統描述了本程式所包含的組件,所實現的功能,能處理的資料,要請求的資源。其代碼如下:
gen包中的R.java檔案
R檔案是由ADT自動產生的,其主要負責調用應用程式的非代碼資源。
從R檔案中可以看出,每個資源都會有相對應的一個整數。
Android.jar開發包
作為一個Java項目,通常情況下都會引入要用到的工具類,也就是Jar包,在Android開發中,絕大部分開發用的工具包都被封裝到一個名叫Android.jar的檔案裡了。
如果我們在Eclipse中展開來看,可以看到j2se中的包,apache項目中的包,還有Android自身的包檔案。在這裡我們簡單瞭解一下Android的包檔案:
android.app :提供高層的程式模型、提供基本的運行環境
android.content :包含各種的對裝置上的資料進行訪問和發布的類
android.database :通過內容提供者瀏覽和操作資料庫
android.graphics :底層的圖形庫,包含畫布,顏色過濾,點,矩形,可以將他們 直接繪製到螢幕上.
android.location :定位和相關服務的類
android.media :提供一些類管理多種音頻、視頻的媒體介面
android.net :提供協助網路訪問的類,超過通常的java.net.* 介面
android.os :提供了系統服務、訊息傳輸、IPC 機制
android.opengl :提供OpenGL 的工具
android.provider :提供類訪問Android 的內容提供者
android.telephony :提供與撥打到電話相關的API 互動
android.view :提供基礎的使用者介面介面架構
android.util :涉及工具性的方法,例如時間日期的操作
android.webkit :預設瀏覽器操作介面
android.widget :包含各種UI 元素(大部分是可見的)在應用程式的螢幕中使用