Android開發_Android應用程序架構

Android應用程序架構

src/  java原代碼存放目錄

gen自動生成目錄

gen 目錄中存放所有由Android開發工具自動生成的文件。目錄中最重要的就是R.java文件。 這個文件由Android開發工具自動產生的。Android開發工具會自動根據你放入res目錄的xml界面文件、圖標與常量,同步更新修改R.java文件。正因爲R.java文件是由開發工具自動生成的,所以我們應避免手工修改R.javaR.java在應用中起到了字典的作用,它包含了界面、圖標、常量等各種資源的id,通過R.java,應用可以很方便地找到對應資源。另外編繹器也會檢查R.java列表中的資源是否被使用到,沒有被使用到的資源不會編繹進軟件中,這樣可以減少應用在手機佔用的空間

res資源(Resource)目錄:詳細註解見下方

在這個目錄中我們可以存放應用使用到的各種資源,如xml界面文件,圖片或數據。

assets資源目錄

Android除了提供/res目錄存放資源文件外,在/assets目錄也可以存放資源文件,而且/assets目錄下的資源文件不會在R.java自動生成ID,所以讀取/assets目錄下的文件必須指定文件的路徑,如:file:///android_asset/xxx.3gp

AndroidManifest.xml 項目清單文件:詳細註解見下方。

 這個文件列出了應用程序所提供的功能,以後你開發好的各種組件需要在該文件中進行配置,如果應用使用到了系統內置的應用(如電話服務、互聯網服務、短信服務、GPS服務等等),你還需在該文件中聲明使用權限(<uses-permission>)。

default.properties 項目環境信息,一般是不需要修改此文件

res/ 資源(Resource)目錄註解】

res/drawable 專門存放pngjpg等圖標文件。在代碼中使用getResources().getDrawable(resourceId)獲取該目錄下的資源。

res/layout 專門存放xml界面文件,xml界面文件和HTML文件一樣,主要用於顯示用戶操作界面。

res/values 專門存放應用使用到的各種類型數據。不同類型的數據存放在不同的文件中,如下:

· strings.xml 定義字符串和數值,在Activity中使用getResources().getString(resourceId) getResources().getText(resourceId)取得資源。它的作用和struts中的國際化資源文件一樣。

<?xml version="1.0" encoding="UTF-8"?>

<resources>

  <string name="baidu">百度</string>

</resources>

· arrays.xml 定義數組。

<?xml version="1.0" encoding="utf-8"?>

<resources>

<string-array name="colors">

<item>red</item>

<item>yellow</item>     

<item>green</item>     

<item>blue</item>   

</string-array>

</resources>

· colors.xml 定義顏色和顏色字串數值,你可以在Activity中使用getResources().getDrawable(resourceId) 以及getResources().getColor(resourceId)取得這些資源。例子如下:

      <?xml version="1.0" encoding="UTF-8"?>

<resources>

  <color name="contents_text">#ff000000</color>

</resources>

· dimens.xml 定義尺寸數據,在Activity中使用getResources().getDimension(resourceId) 取得這些資源

      <?xml version="1.0" encoding="UTF-8"?>

<resources>

  <dimen name="key_height">50dip</dimen>

</resources>

· styles.xml 定義樣式。

<?xml version="1.0" encoding="utf-8"?>

<resources>

<style name="Text" parent="@style/Text">

<item name="android:textSize">18px</item>

<item name="android:textColor">#008</item>

</style>

</resources> 

res/anim/ 編譯成幀動畫的XML文件。

res/xml/ Activity中使用getResources().getXML()讀取該目錄下的XML資源文件。

res/raw/ 該目錄下的文件將直接被複制到設備上。編譯軟件時,這些數據不會被編譯,它們被直接加入到程序安裝包裏。 爲了在程序中使用這些資源,你可以調用getResources().openRawResource(ID) , 參數ID形式:R.raw.somefilename

項目清單文件 AndroidManifest.xml註解】

AndroidManifest.xml相當於web應用中web.xml

 package="org.will.demo.activity" ,包名,區分每一個應用程序員,其它所有的類(Activity)或者相關組件都放置在這個包或者他的子包下面。

 <application>用來定義一個Android應用。主要屬性:

 android:icon描述圖標。

 android:label指定應用程序標籤

 <activity>用來定義一個界面組件,必須一個類與定義。

 android:name表示他的類名,比如.HelloActivity

 android:label表示打這個界面的時候,屏幕頂部顯示的標題。

 

 intent:打算,意圖。

 <intent-filter>用來描述某一個Activity的相關屬性,意圖過濾器。

 <action android:name=""/>用來描述這個Activityaction名稱。這個名稱,可以隨便填。你也可以使用Android他所提供的一些固定名稱,不同的名稱代表不同特性。android.intent.action.MAIN這是固定屬性。

<category android:name=""/>Activity分類特性,

<uses-permission>用來指定我們應用要出示的權限。


<!--EndFragment-->
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章