在Eclipse+ADT中建立HelloWorld很是簡單,直接按照導航下一步就能夠了。本文重點不在如何建立,而在理解HelloWorld項目的文件。php
src:存放應用程序的邏輯代碼,這裏面的代碼是人工寫的html
gen:存放資源代碼,這裏面的代碼是自動生成的java
assets:存放mp3等視頻資源android
bin:生成的可執行的二進制文件目錄web
libs:引用到的庫,這裏和bin/dexedLibs裏面的目錄是一致的網絡
res:資源文件。往這個目錄添加資源的時候,會被gen/R.java自動記錄,自動那個記錄到R.java中去。mvc
AndroidManifest.xml:項目的總配置項,記錄應用中使用到各類全局的配置app
ic_launcher-web.png:這個是爲了google Play市場使用展現的圖標,它須要的是512×512的高分辨率的圖標。函數
proguard-project.txt工具
project.properties
這兩個文件是爲了保護Android項目而作的代碼混淆使用的。官方文檔在:http://developer.android.com/tools/help/proguard.html
下面一個一個看:
存放用戶代碼的文件夾,裏面至少會有一個Activity。Activity的概念就是界面,至關於C#中的Windows Form。
看到至少包含了一個onCreate函數,是在渲染界面的時候調用的,這裏使用R.layout.activity_main來渲染,這個就對應於gen/R中的
activity_main等號後面的是資源描述符。
這裏正好能夠看一下R這個類
R中的每一個類都對應res中的一個資源,
好比layout對應res/layout
drawable對應res/drawable-XXdpi
因此上文中的R.layout.activity_main對應的實際是res/layout/activity_main.xml。這樣就把界面和邏輯分開了,這就是典型的mvc模式分層的概念。
裏面存放着全局的DEBUG開關,你可使用這個開關作日誌和調試的操做。
可是如何修改這個呢?gen下面的文件不該該手動修改,具體能夠參照:http://drovik.com/html/5701262218.html
這個目錄是生成文件的目錄,能夠看到,它把apk包,AndroidMainifest.xml都生成一份放在文件夾內。
java編譯後生成的java字節碼文件,至關於java的.class文件。可是因爲Android使用的dalvik虛擬機和標準的java虛擬機是不兼容的,因此dex和class是不同的。
如今網絡上就有一些工具能經過dex來進行反編譯出Android代碼。好比這個:
http://code.google.com/p/android-apkdb/
這個就是應用的安裝包了(application package file)。一個apk文件內包含被編譯的代碼文件(.dex文件),文件資源(res),assets,證書(certificates),和清單文件(manifest file)。APK是基於zip文件格式的。
這個是全部資源文件的集合,其實是zip格式。咱們能夠將它的後綴名修改,解壓能夠看到裏面的結構是有mainfest,res等。
對應libs中引用的jar包
這個目錄就是全部的資源文件了
res/drawable-Xdpi:這裏存放的是對不一樣分辨率的資源
res/layout:存放佈局資源,src中的onCreate方法就加載了這裏面的activity_main資源
res/menu:手機的menu菜單
res/values:用來存放一些變量,參數等。
res/values-XX:對於不一樣設備或者不一樣的安卓版本會有不一樣的參數設置
http://blog.chukong-inc.com/index.php/2012/06/05/android%E4%BB%A3%E7%A0%81%E6%B7%B7%E6%B7%86/
http://drovik.com/html/5701262218.html
http://www.cnblogs.com/skynet/archive/2010/04/13/1711479.html
==================================
做者:軒脈刃(yjf512)
出處:(http://www.cnblogs.com/yjf512/) 版權聲明:本文的版權歸做者與博客園共有。歡迎轉載閱讀,轉載時須註明本文的詳細連接。