您的位置:首页 > 移动开发 > Android开发

android学习2#--studio目录结构

2016-06-06 19:14 363 查看
应该还有不少人纠结到底用Studio还是eclipse+ADT,因为没有用过eclipse+ADT,没有太多话语权,但是Studio毕竟是google的亲儿子,还是建议用Studio。

第一次看到新建工程后的目录结构,相信不少初学者跟我一样,存在迷惑,怎么这么复杂,分别又都代表些什么?疑问来了,学习动力也就来了,百度+google之......

Android view:

通常,新建的Studio项目默认是android view结构,如下图:



它主要包含三部分:

mainfests: 包含
AndroidManifest.xml
文件,第一次接触这玩意。

java: java源文件以及测试源文件都在这里

res: 包含所有非代码资源,如XML布局,UI字符串,和位图图像,分为相应子目录。有关所有可能的资源类型的详细信息,请参阅Providing Resources

简单理下各部分目录

mainfests:官网大意是这么解释的:AndroidManifest.xml 是每个android程序中必须的文件,位于整个项目的根目录,描述了package中暴露的组件(activities, services, 等等),他们各自的实现类,各种能被处理的数据和启动位置。
除了能声明程序中的Activities, ContentProviders, Services, 和Intent Receivers,还能指定permissions和instrumentation(安全控制和测试)等等。具体的介绍见:AndroidManifest.xml介绍AndroidManifest详解之Application(有图更好懂),我也没有全部看懂,先收藏起来吧。

另外一台湾人对AndroidMainifest.xml文件有一个初步分析,这里拷贝过来使用【这部分来源于:Android
Studio 專案目錄、架構與結構】:

<!-- 宣告這是一份 XML 文件 -->
<?xml version="1.0" encoding="utf-8"?>
<!-- 最外層一定是 <manifest> 標籤 -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
<!-- package 應用程式的完整套件名稱(此名稱也會成為該應用程式的 Application ID)-->
package="com.example.jacky.myapplication">

<!-- 應用程式相關設定 -->
<application
android:allowBackup="true"
<!-- 在裝置上的啟動圖示(就是 APP 的 icon),如下參照到 res/mipmap 目錄內的圖像(就是小綠人頭)-->
android:icon="@mipmap/ic_launcher"
<!-- 在裝置上的代表名稱,如下參照到 values/strings.xml 檔案內的 app_name 字串 -->
android:label="@string/app_name"

android:supportsRtl="true"

<!-- 指定的佈照主題,如下參照到 values/style.xml -->
android:theme="@style/AppTheme">

<activity
<!-- Activity 名稱,省略套件名稱代表,則套用 <manifest> 標籤的 package 套件名稱 -->
android:name=".MainActivity"
<!-- Activity 標題名稱,會在畫面的 ActionBar 上顯示 -->
android:label="@string/app_name"

android:theme="@style/AppTheme.NoActionBar">

<intent-filter>
<!-- 設定此 Activity 頁面為首頁 -->
<action android:name="android.intent.action.MAIN" />
<!-- 應用程式安裝完畢後會自動啟動(未加入該設定,不會自動啟動,必須手動點擊 APP icon 圖示啟動)-->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>


Java:相信大家都明白是啥玩意

res:下面是res目录下简单的层次结构

res/
drawable/
graphic.png
layout/
main.xml
info.xml
mipmap/
icon.png
values/
strings.xml


基本是由drawable、layout、mipmap、valuse组成。

drawable: 位图文件(.png,.JPG,.GIF)等。

layout: 定义的用户接口布局的XML文件。

mipmap: 针对不同的启动器图标密度可绘制文件。

values: UI需要用到的文字、颜色的各种xml文件。

Progject View:

当你选择Project view时,你看到目录将是很完整的,如下图:



目录层次结构介绍如下:【转自:Android Studio入门到精通

build://构建目录,相当于Eclipse中默认Java工程的bin目录,鼠标放在上面右键Show in Exploer即可打开文件夹,编译生成的apk也在这个目录的outs子目录,不过在AS的工程里是默认不显示out目录的,就算有编译结果也不显示,右键打开通过文件夹直接可以看。
libs://依赖包,包含jar包和jni等包。
src://源码,相当于eclipse的工程。
main://主文件夹
java://Java代码,包含工程和新建是默认产生的Test工程源码。
res://资源文件,类似Eclipse。
layout://App布局及界面元素配置,雷同Eclipse。
menu://App菜单配置,雷同Eclipse。
values://雷同Eclipse。
dimens.xml://定义css的配置文件。
strings.xml://定义字符串的配置文件。
styles.xml://定义style的配置文件。
......://arrays等其他文件。
......://assets等目录
AndroidManifest.xml://App基本信息(Android管理文件)
ic_launcher-web.png://App图标
build.gradle://Module的Gradle构建脚本


关于Gradle,这里只了解下它是个什么东西,具体后续再研究吧:

Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具。它使用一种基于Groovy的特定领域语言(DSL)来声明项目设置,抛弃了基于XML的各种繁琐配置。
面向Java应用为主。当前其支持的语言限于Java、Groovy和Scala,计划未来将支持更多的语言。

参考:

/article/1503788.html
http://www.smalljacky.com/programming-language/android/android-studio-project-directory-structure/ https://www.zybuluo.com/stepbystep/note/63311#android-studio的工程结构 http://www.jianshu.com/p/3097ec18303c
/article/1503788.html
https://developer.android.com/studio/projects/index.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: