當我們使用eclipse創建一個Android工程的時候,Eclipse會自動為我們生成一個目錄結構,這個目錄機構是我們開發所有應用程序的”原型“,因此我們有必要深入的了解一下這個目錄結構的各個部分。
在eclipse中創建一個項目,我們把它全部展開,如下圖所示:
注解:
src:這是項目所有的包和源文件存放的目錄。
res:資源(Resource)目錄。
可以存放應用使用到的各種資源,如xml界面文件、圖標或常量。
res/drawable——專門存放圖標文件。
res/layout——專門存放xml界面文件,xml界面文件和HTML文件一樣、主要用於用戶界面顯示。
res/value——專門存放應用使用到的各種常量。
gen:存放所有由Android開發工具自動生成的文件。目錄中最重要的就是R.java文件。Android開發工具會自動根據你放入res目錄的xml界面文件、圖標與常量同步更新修改R.java文件。我們應避免手動添加。編譯器會檢查R.java列表中的資源是否被使用到,沒有被使用到的資源不會編譯進軟件中,這樣可以減少應用在手機中占用的空間。
AndroidManifest.xml:功能清單文件。
這個文件列出了應用程序所提供的所有功能。每當你添加一個Activity時,就需要在此文件中作相應的配置,否則應用程序就無法識別和使用這個Activity。也可以指定應用程序需要的服務、接收器等,以及它們對應的<Intent-filter>,用於通過intent的方式打開指定服務或接收器。程序所需權限也需要在這里設置。
AndroidManifest.xml元素功能介紹:
xmlns:android——包含命名空間的聲明。xmlns:android=http://schemas.android.com/apk/res/android,使得Android中各種標准屬性能在文件中使用,提供了大部分元素中的數據。
application——包含package中application級別組件聲明的根節點。此元素也包含application的一些全局和默認屬性,如標簽、icon、主題、必要的權限,等等。一個manifest能包含另個或一個此元素(不能大於1個)。
android:icon——應用程序圖標
android:label——應用程序名字
Activity——用來與用戶交互的主要工具。Activity是用戶打開一個應用程序的初始頁面,大部分被使用到的其他頁面也由不同的activity所實現,並聲明在另外的activity標記中。
android:name——應用程序默認啟動的activity
intent-filter——聲明了指定的一組組件支持的Intent值,從而形成了IntentFilter。除了能在此元素下制定不同類型的值,屬性也能放在這里來描述一個操作所需的唯一的標簽、icon和其他信息。
action——組件所支持的Intent action
category——組件支持的Intent Category。這里指定了應用程序默認啟動的activity。
uses-sdk——該應用程序所使用的SDK版本信息。
default properties:系統默認信息,一般不需要修改此文件。
assets:這個目錄保存的文件可以打包在程序里。Android不為assets下的文件生成id,如要使用assets里的文件,需要指定文件的路徑和文件名。
bin:存放每次編譯生成的文件,編譯生成的xxx.apk就存放在這個目錄。