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

來源:互聯網
上載者:User

昨天在文章裡看到的一個分析方法,很簡單,給大家分享下!
 
         呵呵,由於我也是剛開始學習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 元素(大部分是可見的)在應用程式的螢幕中使用


摘自 郭子的部落格
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.