android自學筆記《四》——應用程序結構分析

昨天在帖子裡看到的一個分析方法,很簡單,給大傢分享下!
 
         呵呵,由於我也是剛開始學習Android,還沒有學到下面這些知識,這裡就直接截圖瞭。
 
        看完他這個分析之後,我對Android程序有瞭一個簡單的認識,若要深入的理解,我想我今後還要在此下很多的功夫。。。。要努力啦。。。。
 
        好瞭,下面開始介紹他的分析方法:
 
        他拿一個Hello,World做例子,通過分析Hello,World的目錄結構,讓我們對Android程序有一個整體而又全面的認識。
 
         先看一下Lesson2_Helloword的顯示結果:
 
 
 
        然後我們再看一下Helloword的程序目錄:
 
 
我們可以看到:
 
  1. MainHelloWorld.java文件
 
  2. R.java文件
 
  3. android.jar文件
 
  4. RES、Layout、main.xml文件
 
  5. androidmainfest.xml文件
 
   
接下來我們逐個加以講解:
 
     1、Activity類 及MainHelloWorld文件淺析
 
 
 
 Activity是Android中的視圖部分,負責界面顯示。
 
 
 
package android.basic.lesson2.helloworld;import android.app.Activity;
 
import android.os.Bundle;public class MainHelloWorld extends Activity {
 
/** Called when the activity is first created. */
 
@Override
 
public void onCreate(Bundle savedInstanceState) {
 
super.onCreate(savedInstanceState);
 
setContentView(R.layout.main);
 
}
 
}
             可以看到MainHelloWorld是Activity的子類,子類要重寫onCreate方法。     
 
             setContentView(R.layout.main)方法是給Activity設置可以顯示的視圖(View),視圖由R類負責尋找。
 
      2、R文件淺析
 
       我們看到Gen目錄下有個R.Java文件,R文件由ADT自動生成,程序員不需要也不要去修改它,R文件負責調用應用程序中的非代碼資源。
 
 
 
     從R文件中可以看到每一個資源都會有一個整數和它相對應。
 
     3、res/layout/main.xml文件淺析 – 佈局layout
 
      我們看到有個res目錄,也就是resource目錄,這個目錄下存放資源文件,資源文件的統一管理,也是Android系統的一大特色。現在要註意看的是layout目錄下的main.xml。這個文件的內容是有關用戶界面佈局和設計的。在桌面程序設計領域采用XML也許比較新穎,但是在網頁設計領域,這個就很平常瞭。
 
 
 
 
 
 
        從以上代碼可以看到整個程序界面由一個線性佈局控件(LinearLayout)和2個文本框控件(TextView)組成。res的其他目錄裡的其他文件也都是相關的資源描述。
 
4、AndroidManifest.xml文件淺析
 
      在每個應用程序的根目錄都會有一個AndroidManifest.xml文件,該文件向Android操作系統描述瞭本程序所包括的組件,所實現的功能,能處理的數據,要請求的資源等等。


 
      我們看到Manifest是根節點,節點屬性裡有versionCode和versionName來表示應用程序的版本;裡面可以包含0個或1個application元素,application可以包含多個activity組件等等,具體的內容我們在接下來的課程裡詳細講解。
 
5、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 元素(大部分是可見的)在應用程序的屏幕中使用

摘自 郭子的博客
 

發佈留言