當前位置:首頁 » 安卓系統 » android項目目錄結構

android項目目錄結構

發布時間: 2022-05-18 12:30:23

『壹』 android studio怎麼展開目錄結構

一、下載安裝 下載後,打開並將Android Studio拖動到Applications中去,拷貝完畢即可,可以到應用程序下將圖標拖動到Dock上。 二、新建工程 安裝完成後,選擇默認選項點擊OK即可: 進入Android Studio,開始界面和Xcode有點類似,點擊New project新建一個工程,新建過程和在Eclipse上差不多。 新建工程完畢後就進入了Android Studio主界面。第一次進去可能什麼也沒有,點擊箭頭所示按鈕目錄結構, 後可以看到Android Studio的目錄結構,和Eclipse的工程還是有一點區別的: 區別: 1.Android Studio的目錄結構本來就代表一個workspace,一個workspace裡面可以有Mole,可以將一個Mole理解成Eclipse中的一個Project; 2.目錄中將java代碼和資源文件(圖片、布局文件等)全部歸結為src,在src目錄下有一個main的分組,同時劃分出java和res兩個Group,res和Eclipse下的結構一樣,java下就是源碼的包和類文件; 3.新建文件方式的不同,右鍵選擇New或Command+N後出現新建菜單,類型有Java Class,也就是一般的java類,File就是普通文件,Package就是建包,值得注意的就是Android Component,它直接提供了Android中基本組件的創建。 可以選擇創建Android中不同類型的組件: 三、窗口布局及主題介紹 另外,主界面底部有一個名為Android的選項卡,打開可以看到DDMS中的設備信息和Logcat輸出: 頂部工具欄中可以看到和Eclipse中功能一樣的一個選項,這些相信大家都比較熟悉了: 最後需要說明的是,大家看到我的主界面是暗色風格,和Google演示的是一樣的風格,大家第一次使用打開的是默認風格(亮色),如果想要修改的話,進入Preferences(按Command+,)到IDE Settings下選擇Colors&font並設置Schema name為Darcula就可以設置成暗色風格,如果需要自己定義樣式,比如字體大小顏色等,可以新建一個Schema來自己定義 四、布局文件編寫(實時預覽) 最炫的功能要來了,實時編寫並預覽布局文件,此項功能著實大大提高開發效率,打開一個xml布局文件點擊右側Preview選項卡即可喚出預覽界面,可以選擇很多尺寸的手機進行預覽: 同時,還可以同時預覽多種不同型號和尺寸的設備,編寫代碼的同時適配多種機型,這不就是當初夢寐以求的嘛! 上面介紹了Android Studio的基本使用,包括安裝、新建工程、工程結構以及主題設置。下面介紹一些其他技巧,以及與Eclipse之前的一些對比。需要重申一下,我所有的操作與版本是基於Mac系統,在Windows上的同學基本類似,下面就分主題開始吧: 一、從Eclipse導入工程到Android Studio 根據官方的介紹,Android Studio可以兼容Eclipse的現有工程,但需要做一些操作: 首先升級ADT到最新版本,目前為版本號為22(注意和ADT相關的組件最好一並升級,避免後期可能出現的錯誤) 選擇需要從Eclipse導出的工程,右鍵選擇Export並選擇Android下的Generate Gradle Build Files 選擇完畢後並不會導出到其他地方,而是在本地工程生成了一個build.gradle文件,在Eclipse工程中也可以看到,這個文件是Android Studio識別的 3.隨後進入Android Studio並選擇Import Project,可以看到剛剛在Eclipse中的項目圖標變成了一個Android機器人圖標,說明轉換成功,這時候選擇工程導入即可: 至此,就完成了從Eclipse導入現有Android工程到Android Studio,現在可以開始對工程進行操作了! 二、Eclipse工程與Android Studio的區別 Eclipse工程可以導入Android Studio運行,而反過來在Android Studio建立的工程不能在Eclipse中運行; 二者的工程結構不一樣,在Eclipse中一個Project就代表一個項目工程,而在Android Studio中就和Intellij一樣,一個Project代表一個工作空間,相當於Eclipse中的workspace,而在Android Studio中一個Mole就相當於Eclipse中的一個Project,這個概念需要弄明白,不要混了或覺得糊塗了。 在編輯操作上,在Eclipse中編輯修改後必須手動command+s保存文件,而在Android Studio中就和Intellij一樣是自動保存的,這一點和第二點和Xcode也是類似的。 工程目錄上的區別,在Eclipse中src部分一般是java文件,res部分是資源文件,包括布局文件和多媒體資源等。在Android Studio中 包括java文件和資源文件全部放到了src目錄下,src目錄下包括一個main文件夾,再下面就是java文件夾和res文件夾,其實這里,java文件夾就相當於Eclipse中的src,res還是那個res,這里想起了本山老師的小品「src已經不是那個src了,res還是那個res」 三、真機運行以及常用快捷鍵 在Android Studio中點擊界面下方的Android選項卡可以看到Device信息和Logcat,連上設備後打開Android選項卡會檢測真機,成功後會顯示在Device中,點擊頂部的綠色小箭頭就可以開始運行工程了。有一點需要注意的是,運行時可以選擇模擬器也可以選擇真機,由於在Android Studio中運行工程的時候有一個Device優先順序選擇,如果不設置的話可能會出現只運行在模擬器上的現象,我們可以自行設置一下:先點擊Run菜單選擇Run Configuration,並選擇你想選擇的目標設備,可以是模擬器和真機,也可以在運行選由用戶選擇: 快捷鍵大家可以對照官方文檔進行熟悉,如下表,也可以自己修改配置選項進行自定義: 個人覺得Android Studio還是有一定的前景的,這里就需要Google不斷進行完善和改進了,趕緊把大家從Eclipse中解救出來吧。另外,在此期間,大家其實可以嘗試使用一下Intellij IDEA,這個默認也是集成Android開發環境的。Android Studio是基於前者改進而來,二者在使用上差不多,也是Eclipse的一個不錯的替代者。

『貳』 與Android應用程序相關的文件目錄都有哪些

在搭建Android開發環境及簡單地建立一個HelloWorld項目後,本篇將通過HelloWorld項目來介紹Android項目的目錄結構。本文的主要主題如下:
1、HelloWorld項目的目錄結構
1.1、src文件夾
1.2、gen文件夾
1.3、Android 2.1文件夾
1.4、assets
1.5、res文件夾
1.6、AndroidManifest.xml
1.7、default.properties

圖1、HelloWorld項目目錄結構
下面將分節介紹上面的各級目錄結構。
1.1、src文件夾
顧名思義(src, source code)該文件夾是放項目的源代碼的。打開HelloWorld.java文件會看到如下代碼:
package helloworld.test; import android.app.Activity; import android.os.Bundle; public class HelloWorld extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); } }

可以知道:我們新建一個簡單的HelloWorld項目,系統為我們生成了一個HelloWorld.java文 件。他導入了兩個類android.app.Activity和android.os.Bundle,HelloWorld類繼承自Activity且重 寫了onCreate方法。
以下說明針對沒有學過Java或者Java基礎薄弱的人

@Override

在重寫父類的onCreate時,在方法前面加上@Override 系統可以幫你檢查方法的正確性。
例如,public void onCreate(Bundle savedInstanceState){…….}這種寫法是正確的,
如果你寫成public void oncreate(Bundle savedInstanceState){…….}這樣編譯器回報如下錯誤——
The method oncreate(Bundle) of type HelloWorld must override or implement a supertype method,
以確保你正確重寫onCreate方法。(因為oncreate應該為onCreate)

而如果你不加@Override,則編譯器將不會檢測出錯誤,而是會認為你新定義了一個方法oncreate。

android.app.Activity類:因為幾乎所有的活動 (activities)都是與用戶交互的,所以Activity類關注創建窗口,你可以用方法setContentView(View)將自己的UI放 到裡面。然而活動通常以全屏的方式展示給用戶,也可以以浮動窗口或嵌入在另外一個活動中。有兩個方法是幾乎所有的Activity子類都實現的:
onCreate(Bundle): 初始化你的活動(Activity),比如完成一些圖形的繪制。最重要的是,在這個方法里你通常將用布局資源(layout resource)調用setContentView(int)方法定義你的UI,和用findViewById(int)在你的UI中檢索你需要編程地 交互的小部件(widgets)。setContentView指定由哪個文件指定布局(main.xml),可以將這個界面顯示出來,然後我們進行相關 操作,我們的操作會被包裝成為一個意圖,然後這個意圖對應有相關的activity進行處理。
onPause():處理當離開你的活動時要做的事情。最重要的是,用戶做的所有改變應該在這里提交(通常ContentProvider保存數據)。
更多的關於Activity類的詳細信息此系列以後的文章將做介紹,如果你想了解更多請參閱相關文檔。
android.os.Bundle 類:從字元串值映射各種可打包的(Parcelable)類型(Bundle單詞就是捆綁的意思,所有這個類很好理解和記憶)。如該類提供了公有方法—— public boolean containKey(String key),如果給定的key包含在Bundle的映射中返回true,否則返回false。該類實現了Parceable和Cloneable介面,所以 它具有這兩者的特性。
1.2、gen文件夾
該 文件夾下面有個R.java文件,R.java是在建立項目時自動生成的,這個文件是只讀模式的,不能更改。R.java文件中定義了一個類——R,R類 中包含很多靜態類,且靜態類的名字都與res中的一個名字對應,即R類定義該項目所有資源的索引。看我們的HelloWorld項目是不是如此,如下圖:

圖2、R.java對應res
通過R.java我們可以很快地查找我們需要的資源,另外編繹器也會檢查R.java列表中的資源是否被使用到,沒有被使用到的資源不會編繹進軟體中,這樣可以減少應用在手機佔用的空間。
1.3、Android 2.1文件夾
該 文件夾下包含android.jar文件,這是一個Java 歸檔文件,其中包含構建應用程序所需的所有的Android SDK 庫(如Views、Controls)和APIs。通過android.jar將自己的應用程序綁定到Android SDK和Android Emulator,這允許你使用所有Android的庫和包,且使你的應用程序在適當的環境中調試。例如上面的HelloWorld.java源文件中 的:
import android.app.Activity; import android.os.Bundle;

這里兩行代碼就是從android.jar導入包。
1.4、assets
包含應用系統需要使用到的諸如mp3、視頻類的文件。
1.5、res文件夾
資源目錄,包含你項目中的資源文件並將編譯進應用程序。向此目錄添加資源時,會被R.java自動記錄。新建一個項目,res目錄下會有三個子目錄:drawabel、layout、values。
drawabel-?dpi:包含一些你的應用程序可以用的圖標文件(*.png、*.jpg)
layout:界面布局文件(main.xml)與WEB應用中的HTML類同,沒修改過的main.xml文件如下(HelloWorld的就沒有修改過):
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="@string/hello" /> </LinearLayout>

values:軟體上所需要顯示的各種文字。可以存放多個*.xml文件,還可以存放不同類型的數據。比如arrays.xml、colors.xml、dimens.xml、styles.xml
1.6、AndroidManifest.xml
項目的總配置文件,記錄應用中所使用的各種組件。這個文件列出了應用程序所提供的功能,在這個文件中,你可以指定應用程序使用到的服務(如電話服務、互聯網 服務、簡訊服務、GPS服務等等)。另外當你新添加一個Activity的時候,也需要在這個文件中進行相應配置,只有配置好後,才能調用此 Activity。AndroidManifest.xml將包含如下設置:application permissions、Activities、intent filters等。
HelloWorld項目的AndroidManifest.xml如下所示:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="helloworld.test" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".HelloWorld" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>

關於AndroidManifest.xml現在就講這么多,此系列後面的文章將單獨詳細介紹。
1.7、 default.properties
記錄項目中所需要的環境信息,比如Android的版本等。
HelloWorld的default.properties文件代碼如下所示,代碼中的注釋已經把default.properties解釋得很清楚了:
# This file is automatically generated by Android Tools.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must be checked in Version Control Systems.
#
# To customize properties used by the Ant build system use,
# "build.properties", and override values to adapt the script to your
# project structure.

# Indicates whether an apk should be generated for each density.
split.density=false
# Project target.
target=android-7

『叄』 安卓手機根目錄下的各個文件夾有什麼作用

作用:

1.res:資源文件。

2.drawable:布局文件。

3.layout:布局文件。

4.anim:動畫效果文件。

5.values:取值、字元串等。

6.src:代碼,至於src內部的目錄名稱,取決於具體項目結構。

7.libs:庫文件。

『肆』 Android項目在Eclipse中的目錄結構不見了怎麼弄出來

1.在空白處右擊,選擇new -> Project...,選擇Android下面的Android Project;
2.選擇create Project from existing source;
3.下面有個選擇路徑的Location就變得可以使用了,你點那個Browse;
4.選擇好你的Android項目放置的位置,就可以了。

你可以在菜單選擇window -> show view -> package explorer,如果還是沒有,你就先把你那上面有的界面都先最小化,目錄結構就出來了。

『伍』 安卓程序結構目錄有哪些每個目錄的作用是什麼

和電腦安裝程序,然後查找位置一樣。你安裝在SD卡你就去SD里找,一般都是英文的。比如:你安裝了網路的應用,那麼你SD卡根目錄里就會有這個標題的文件夾。騰訊產品是tencent酷我音樂kuwomusic希望能幫助你。

『陸』 android studio集成cordova和安裝cordova有什麼不同

一般Android項目結構和目錄結構一樣,是這樣的:
MyApp
|--build.gradle
|--settings.gradle
|--app
|-- build.gradle
|-- build
|-- libs
|-- src
|-- main
|--java
| |-- com.package.myapp
|--res
|-- drawable
|-- layout
|-- etc

由Cordova創建的項目的目錄結構是這樣的(項目結構見上圖)

看起來很亂是不是。但是不影響使用,實際上也沒必要非要改成標准格式。因為Gradle已經幫我們在配置腳本中寫好了相關配置,它知道如何找到需要的文件。
按照標準的Gradle教程,項目即使沒有任何模塊(mole),Android Studio也會為我們生成一個對應於項目的build.gradle腳本文件的。而觀察圖1,Android Studio打開的Cordova項目中卻沒有,編譯構建工作也可以正常進行,說明這個文件不是必須的。
它是在andorid、CordovaLib模塊中的build.gradle腳本中的android任務的sourceSets的main屬性,其中定義了Android Studio項目目錄結構和真實目錄的對應關系。比如android模塊下的build.gradle是這樣的:
sourceSets {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
jniLibs.srcDirs = ['libs']
}
}

詳細請參考G文第一篇 '保持舊的Eclipse文件結構' 部分。
可以看到,Android Studio中目錄的邏輯結構和系統中的文件夾結構是分離的,依靠的就是Gradle的配置能力。對比標準的項目目錄結構,Cordova項目把android模塊直接放在了項目的根下,而不是其他模塊那樣(比如CordovaLib模塊)作為子文件夾存在,這也說明了它為什麼不需要項目的build.gradle腳本,因為項目的腳本就是android模塊的腳本。之後添加的模塊,都是作為根目錄的子文件夾存在的。
此外還有一個多出來的cordova.gradle,以及和G文名稱不一致的local.properties。
Gradle腳本的詳細說明
上面部分讓我們對用Android Studio打開的Cordova項目有了些感性了解。它有其自已的獨特性:一方面Cordova創建的項目有自己的Gradle配置腳本,另一方面又保留了自己獨特的結構。接下來讓我們對Gradle腳本的各個部分作較為詳細的了解,同樣的基礎知識請參考G文或《Gradle for Android》一書。
我們看到Gradle腳本相關的文件有build.gradle(CordovaLib模塊)、build.gradle(android模塊)、cordova.gradle(CordovaLib模塊)、settings.gradle(項目)、local.properties(SDK Location)。看起來有些不一樣。
不過沒關系,我們知道Gradle構建時首先要去找build.gradle腳本的。通過上面的項目結構知道,首先執行的應該是邏輯上屬於android模塊,但實際上位於項目根目錄下的build.gradle。就從這里開始。
android模塊的build.gradle腳本
打開build.gradle。首先看到一些Cordova生成的一些注釋。原文就不照抄了,大意是一些授權說明信息。最後的單行注釋很關鍵:"生成文件!請不要編輯!"。 雖然不能編輯,但一則其他的文件並沒有這么寫,二則做為入口文件,我們還是需要對它做一個了解。
注釋後緊接著就是buildscript方法。在它裡面首先是repositories方法,它告訴我們使用的庫是mavenCentral。接下來是依照已經在本地安裝的gradle的版本選擇使用的Gradle插件版本,並且語句上面有注釋可以參考,以後幾乎在每條語句上面都有注釋幫助我們理解並告訴我們相關參考資料的位置。
// 列表1-1。
buildscript {
repositories {
mavenCentral()
}

// Switch the Android Gradle plugin version requirement depending on the
// installed version of Gradle. This dependency is documented at
// http://tools.android.com/tech-docs/new-build-system/version-compatibility
// and https://issues.apache.org/jira/browse/CB-8143
if (gradle.gradleVersion >= "2.2") {
dependencies {
classpath 'com.android.tools.build:gradle:1.0.0+'
}
} else if (gradle.gradleVersion >= "2.1") {
dependencies {
classpath 'com.android.tools.build:gradle:0.14.0+'
}
} else {
dependencies {
classpath 'com.android.tools.build:gradle:0.12.0+'
}
}
}

隨後又使用了一個repositories任務。注釋說:允許插件通過build-extras.gradle聲明Maven依賴。通過extra這個名字,以及前面不要編輯的警告,它的作用可能是對這個build.gradle文件的修改或補充。其實在下面的代碼中可以看到更多這方面的信息。
// 列表1-2。
repositories {
mavenCentral()
}

接下來有一個wrapper任務,查閱文檔得知它用於定製Gradle Wrapper的。如果對Wrapper不了解,請參考《G》文的第一篇"使用Gradle Wrapper"部分。
// 列表1-3。
task wrapper(type: Wrapper) {
gradleVersion = '2.2.1'
}

接下來定義了一個ext屬性,其中定義了一些額外屬性。注釋也說明了其中定義的屬性需要通過環境變數、build-extras.gradle或gradle.properties設置。
ext屬性中首先引用了cordova.gradle。這樣就知道項目中這個文件用在哪裡了。但下面並沒有用到它。通過後面的代碼推測它可能是供build-extras.gradle調用的。接下來一系列條件判斷語句分別定義了一些屬性並把它們初為null。這些屬性是都以cdv開頭,表示一些Cordova構建屬性。接下來的代碼中會看到它們的作用。最後定義了一個cdvPluginPostBuildExtras數組變數,用來向裡面追加Gradle插件擴展。
// 列表1-4。
ext {
apply from: 'CordovaLib/cordova.gradle'
// The value for android.compileSdkVersion.
if (!project.hasProperty('cdvCompileSdkVersion')) {
cdvCompileSdkVersion = null;
}
// The value for android.buildToolsVersion.
if (!project.hasProperty('cdvBuildToolsVersion')) {
cdvBuildToolsVersion = null;
}
// Sets the versionCode to the given value.
if (!project.hasProperty('cdvVersionCode')) {
cdvVersionCode = null
}
// Sets the minSdkVersion to the given value.
if (!project.hasProperty('cdvMinSdkVersion')) {
cdvMinSdkVersion = null
}
// Whether to build architecture-specific APKs.
if (!project.hasProperty('cdvBuildMultipleApks')) {
cdvBuildMultipleApks = null
}
// .properties files to use for release signing.
if (!project.hasProperty('')) {
= null
}
// .properties files to use for debug signing.
if (!project.hasProperty('cdvDebugSigningPropertiesFile')) {
cdvDebugSigningPropertiesFile = null
}
// Set by build.js script.
if (!project.hasProperty('cdvBuildArch')) {
cdvBuildArch = null
}

// Plugin gradle extensions can append to this to have code run at the end.
cdvPluginPostBuildExtras = []
}

接下來這部分代碼,首先判斷build-extras.gradle文件是否存在,如果存在則把它應用到構建腳本中。下面的判斷語句檢查build-extras.gradle是否定義了列表1-4的屬性。如果有就使用build-extras.gradle中的,如果沒有,則按下面語句設置:
// 列表1-5。
// Set property defaults after extension .gradle files.
if (ext.cdvCompileSdkVersion == null) {
ext.cdvCompileSdkVersion = privateHelpers.getProjectTarget()
}
if (ext.cdvBuildToolsVersion == null) {
ext.cdvBuildToolsVersion = privateHelpers.findLatestInstalledBuildTools()
}
if (ext.cdvDebugSigningPropertiesFile == null && file('debug-signing.properties').exists()) {
ext.cdvDebugSigningPropertiesFile = 'debug-signing.properties'
}
if (ext. == null && file('release-signing.properties').exists()) {
ext. = 'release-signing.properties'
}

// Cast to appropriate types.
ext.cdvBuildMultipleApks = cdvBuildMultipleApks == null ? false : cdvBuildMultipleApks.toBoolean();
ext.cdvMinSdkVersion = cdvMinSdkVersion == null ? null : Integer.parseInt('' + cdvMinSdkVersion)
ext.cdvVersionCode = cdvVersionCode == null ? null : Integer.parseInt('' + cdvVersionCode)

上述代碼表示如果沒有設置列表1-4中的屬性時設置它們,其中調用了cordova.gradle腳本中的方法。如前所述之後會說明這些變數的作用。
接下來這段代碼,注釋告訴我們,要讓cdvBuild的任務依賴於debug/arch-specific,即平台相關,解決的是不同平台構建的問題。首先分成debug和release版,然後根據前面遇到過的cdvBuildMultipleApks和cdvBuildArch的變數判斷是否是跨平台構建,如果是則返回一個根據架構名生成的結果。注意到這個cdvBuildArch變數,在上面列表1-4的注釋中標明它由build.js設置。這個腳本位於項目目錄的cordova/lib/文件夾中,沒有納入到構建中,是cordova cli構建腳本,在這里先不做探討。
def computeBuildTargetName(debugBuild) {
def ret = 'assemble'
if (cdvBuildMultipleApks && cdvBuildArch) {
def arch = cdvBuildArch == 'arm' ? 'armv7' : cdvBuildArch
ret += '' + arch.toUpperCase().charAt(0) + arch.substring(1);
}
return ret + (debugBuild ? 'Debug' : 'Release')
}

// Make cdvBuild a task that depends on the debug/arch-sepecific task.
task cdvBuildDebug
cdvBuildDebug.dependsOn {
return computeBuildTargetName(true)
}

task cdvBuildRelease
cdvBuildRelease.dependsOn {
return computeBuildTargetName(false)
}

接下來定義了一個任務,顯然作用是輸出列表1-4以及後面定義過的屬性值。
task cdvPrintProps << {
println('cdvCompileSdkVersion=' + cdvCompileSdkVersion)
println('cdvBuildToolsVersion=' + cdvBuildToolsVersion)
println('cdvVersionCode=' + cdvVersionCode)
println('cdvMinSdkVersion=' + cdvMinSdkVersion)
println('cdvBuildMultipleApks=' + cdvBuildMultipleApks)
println('=' + )
println('cdvDebugSigningPropertiesFile=' + cdvDebugSigningPropertiesFile)
println('cdvBuildArch=' + cdvBuildArch)
println('computedVersionCode=' + android.defaultConfig.versionCode)
android.proctFlavors.each { flavor ->
println('computed' + flavor.name.capitalize() + 'VersionCode=' + flavor.versionCode)
}
}

接下來就是構建的核心部分,每個使用android插件構建都會有的android方法。裡面對android的構建定義了一些配置。這些配置的做用可以參考相關文章,這里就不贅述了。之後是在任務准備就緒後,對需要驗證的任務進行驗證。再下來定義的addSigningProps函數被android方法調用,用來在需要驗證時,為屬性文件添加驗證配置。最後配置了構建後要執行的方法,並且添加了在自定義配置文件build-extras.gradle中配置的構建後執行方法的入口。
總結
綜上,在Cordova項目中的android文件夾中的默認兩個模塊的內容作為容器和插件的源代碼,有其相對於普通Gradle Android特殊的目錄結構。android模塊把CordovaLib和web內容結合在一起生成Crodova應用,android模塊和CordovaLib通過使用共同的配置變數,保證了包括編譯SDK版本在內的一致性,並提供了額外配置的入口。但萬變不離其宗,這一切都是建立在了解Gradle構建工具的基礎上的。
望採納,謝謝

『柒』 如何將android studio 2.2的目錄結構與eclipse一致

下面是studio項目的目錄結構: 打開src 目錄 進入main 其實library的所有代碼都在這裡面了 而eclipse的結構是這樣的 其實studio項目中java目錄裡面的代碼對應的是eclispe項目中的src目錄中的代碼。而studio中src目錄裡麵包括整個項目的所有代碼包括資源文件和xml。 所以: 直接將studio目錄裡面的src ->main 目錄裡面的java文件夾名改為src , 然後將main裡面的內容(不包括main)拷貝到一個新的以你項目名稱命名的文件夾中 然後用eclipse導入就可以了。

『捌』 android應用工程文件結構有哪些

在Eclipse中,一個基本的Android項目的目錄結構如圖所示。



1. src目錄--程序文件


在裡面保存了程序員辛辛苦苦直接編寫的程序文件。和一般的Java項目一樣,src目錄下保存的是項目的所有包及源文件(.java),res目錄下包含了項目中的所有資源。例如,程序圖標(drawable)、布局文件(layout)和常量(values)等。不同的是,在Java項目中沒有gen目錄,也沒有每個Android項目都必須有的AndroidManifest.xml文件。


.java格式的文件是在建立項目時自動生成的,這個文件是只讀模式,不能更改。R.java文件是定義該項目所有資源的索引文件。

2. AndroidManifest.xml文件--設置文件


AndroidManifest.xml是一個控制文件,在裡麵包含了該項目中所使用的Activity、Service、Receiver

『玖』 安卓手機根目錄下的各個文件夾的作用,麻煩詳細介紹。

1、HelloWorld項目的目錄結構

1.1、src文件夾
1.2、gen文件夾
1.3、Android 2.1文件夾
1.4、assets
1.5、res文件夾
1.6、AndroidManifest.xml
1.7、default.properties

圖1、HelloWorld項目目錄結構

下面將分節介紹上面的各級目錄結構。

1.1、src文件夾

顧名思義(src, source code)該文件夾是放項目的源代碼的。打開HelloWorld.java文件會看到如下代碼:

package helloworld.test;

import android.app.Activity;
import android.os.Bundle;

public class HelloWorld extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
}
可以知道:我們新建一個簡單的HelloWorld項目,系統為我們生成了一個HelloWorld.java文 件。他導入了兩個類android.app.Activity和android.os.Bundle,HelloWorld類繼承自Activity且重 寫了onCreate方法。

以下說明針對沒有學過Java或者Java基礎薄弱的人

@Override

在重寫父類的onCreate時,在方法前面加上@Override 系統可以幫你檢查方法的正確性。
例如,public void onCreate(Bundle savedInstanceState){…….}這種寫法是正確的,
如果你寫成public void oncreate(Bundle savedInstanceState){…….}這樣編譯器回報如下錯誤——
The method oncreate(Bundle) of type HelloWorld must override or implement a supertype method,
以確保你正確重寫onCreate方法。(因為oncreate應該為onCreate)

而如果你不加@Override,則編譯器將不會檢測出錯誤,而是會認為你新定義了一個方法oncreate。
android.app.Activity類:因為幾乎所有的活動 (activities)都是與用戶交互的,所以Activity類關注創建窗口,你可以用方法setContentView(View)將自己的UI放 到裡面。然而活動通常以全屏的方式展示給用戶,也可以以浮動窗口或嵌入在另外一個活動中。有兩個方法是幾乎所有的Activity子類都實現的:

onCreate(Bundle): 初始化你的活動(Activity),比如完成一些圖形的繪制。最重要的是,在這個方法里你通常將用布局資源(layout resource)調用setContentView(int)方法定義你的UI,和用findViewById(int)在你的UI中檢索你需要編程地 交互的小部件(widgets)。setContentView指定由哪個文件指定布局(main.xml),可以將這個界面顯示出來,然後我們進行相關 操作,我們的操作會被包裝成為一個意圖,然後這個意圖對應有相關的activity進行處理。
onPause():處理當離開你的活動時要做的事情。最重要的是,用戶做的所有改變應該在這里提交(通常ContentProvider保存數據)。
更多的關於Activity類的詳細信息此系列以後的文章將做介紹,如果你想了解更多請參閱相關文檔。

android.os.Bundle 類:從字元串值映射各種可打包的(Parcelable)類型(Bundle單詞就是捆綁的意思,所有這個類很好理解和記憶)。如該類提供了公有方法—— public boolean containKey(String key),如果給定的key包含在Bundle的映射中返回true,否則返回false。該類實現了Parceable和Cloneable介面,所以 它具有這兩者的特性。

1.2、gen文件夾

該 文件夾下面有個R.java文件,R.java是在建立項目時自動生成的,這個文件是只讀模式的,不能更改。R

『拾』 Android項目開發詳解的目錄

前言
第1章 Android開發平台的構建
1.1 Android開發行業發展前景
1.1.1 Android概述
1.1.2 Android行業需求前景
1.1.3 Android就業前景
1.2 開發平台的搭建
1.3 體驗Android開發之旅
1.3.1 創建HelloAndroid項目
1.3.2 模擬器配置及運行HelloAndroid
1.3.3 剖析HelloAndroid項目結構
1.4 設置Android模擬器中文環境
1.5 關於本書
第2章 Android項目開發-以手機訂票系統為例
2.1 項目需求概述
2.2 項目功能分解
2.2.1 程序主界面功能
2.2.2 登錄功能
2.2.3 注冊功能
2.2.4 選擇功能
2.2.5 查詢功能
2.2.6 信息列表功能
2.2.7 List詳情功能
2.2.8 用戶信息填寫與選擇功能
2.2.9 預訂成功功能
2.3 項目後台技術選擇
2.3.1 ASP網頁特點
2.3.2 ASP文件的體系結構
2.3.3 ASP的工作原理
2.3.4 IIS的安裝與配置
第3章 程序主界面
3.1 基礎控制項講解
3.1.1 網格視圖
3.1.2 提示
3.2 重點剖析
3.2.1 數據適配器
3.2.2 Android事件處理機制
3.2.3 Android頁面切換
3.3 程序主界面功能實現
3.3.1 程序主界面View實現
3.3.2 程序主界面Control實現
3.3.3 程序主界面Help實現
第4章 登錄功能實現
4.1 基礎控制項講解
4.1.1 文本框
4.1.2 文本編輯框
4.1.3 單選按鈕
4.1.4 按鈕控制項
4.2 重點剖析
4.2.1 Android長度單位
4.2.2 Android布局的用法
4.2.3 SharedPreferences的使用
4.2.4 Android解析XML的方法
4.2.5 Android如何與後台通信
4.3 登錄功能實現
4.3.1 登錄界面View實現
4.3.2 登錄功能Model用戶信息類實現
4.3.3 登錄功能Control實現
4.3.4 登錄功能Help實現
4.3.5 登錄後台ASP實現
第5章 注冊功能實現
5.1 重點剖析
5.1.1 Activity頁面傳值
5.1.2 使用正則表達式進行信息驗證
5.2 注冊功能實現
5.2.1 注冊界面View實現
5.2.2 注冊功能Control實現
5.2.3 注冊後台ASP實現
第6章 選擇功能實現
6.1 基礎控制項講解
6.1.1 自動匹配
6.1.2 列表視圖
6.2 重點剖析
6.2.1 ListAdapter+HashMap+ArrayList的使用
6.2.2 SimpleCursorAdapter的使用
6.3 選擇功能實現
6.3.1 選擇界面View實現
6.3.2 選擇功能Model類實現
6.3.3 選擇功能Control實現
6.3.4 選擇功能後台ASP實現
第7章 查詢功能實現
7.1 基礎控制項講解
7.1.1 圖片視圖
7.1.2 圖片按鈕
7.1.3 下拉列表
7.1.4 日期和時間控制項
7.1.5 菜單
7.1.6 對話框
7.1.7 進度條
7.2 重點剖析
7.3 查詢功能實現
7.3.1 查詢界面View實現
7.3.2 查詢功能Control實現
7.3.3 查詢功能ASP實現
第8章 信息列表功能實現
8.1 重點剖析
8.1.1 日期格式處理與轉換
8.1.2 帶圖片多行ListView子項
8.2 信息列表功能實現
8.2.1 信息列表功能View實現
8.2.2 信息列表功能 Model類實現
8.2.3 信息列表功能Control實現
第9章 List詳情功能實現
9.1 基礎控制項講解
9.1.1 文字交換器
9.1.2 圖片交換器
9.2 List詳情功能實現
9.2.1 List詳情界面View實現
9.2.2 List詳情功能Control實現
第10章 用戶信息選擇與填寫功能實現
10.1 基礎控制項講解
10.1.1 復選框
10.1.2 卷軸視圖
10.2 重點剖析
10.2.1 如何動態增加控制項
10.2.2 多行文本滾動實現
10.2.3 用戶身份證的驗證
10.3 用戶信息選擇與填寫(機票預訂)實現
10.3.1 機票預訂View實現
10.3.2 機票預訂Model實現
10.3.3 機票預訂功能Control實現
10.3.4 機票預訂後台ASP實現
第11章 訂購成功實現
11.1 基礎控制項講解
11.1.1 狀態欄提示
11.1.2 拖動條
11.1.3 循環播放圖片列表效果
11.2 訂購成功實現
11.2.1 機票訂購成功View實現
11.2.2 機票訂購成功功能Control實現
第12章 界面優化、程序發布與真機環境測試
12.1 界面效果優化
12.2 程序自適應處理
12.3 設置程序Logo
12.4 Android單元測試
12.5 項目在不同版本的Android手機上的安裝與運行
第13章 其他Andorid專題開發
13.1 專題一:Andorid數據存儲
13.1.1 Files存儲
13.1.2 NetWork存儲
13.1.3 SQLite編程詳解
13.1.4 Content Providers數據存儲
13.2 專題二:Android多媒體開發
13.2.1 播放音樂
13.2.2 播放視頻
13.3 專題三:外部介面編程
附錄
附錄A IIS部署及網站發布
附錄B 91助手的安裝與使用
附錄C DDMS常用功能詳解
參考文獻

熱點內容
arch搭建dhcp伺服器 發布:2025-08-18 05:50:07 瀏覽:13
php游戲後台 發布:2025-08-18 05:34:05 瀏覽:61
安卓手機怎麼看不了電池健康值 發布:2025-08-18 05:27:48 瀏覽:299
php表格顯示資料庫數據 發布:2025-08-18 05:20:44 瀏覽:720
提供固定ip的雲伺服器 發布:2025-08-18 05:14:25 瀏覽:746
codeblockslinux編譯 發布:2025-08-18 05:14:24 瀏覽:676
編譯程序比較復雜所以執行率高 發布:2025-08-18 05:13:50 瀏覽:172
計算機軟體編程 發布:2025-08-18 05:13:50 瀏覽:699
vcenter搭建域伺服器 發布:2025-08-18 05:08:49 瀏覽:511
serv文件怎麼上傳伺服器 發布:2025-08-18 05:07:16 瀏覽:57