_024_Android_Android Studio目录结构及工程项目结构解析

摘录自: http://www.runoob.com/w3cnote/android-tutorial-project-src-analysis.html ,感谢作者的无私分享。

Android Studio目录结构

新建工程项目后AS的Product目录结构如下所示:

.idea://AS生成的工程配置文件,类似Eclipse的project.properties。
app://AS创建工程中的一个Module。
gradle://构建工具系统的jar和wrapper等,jar告诉了AS如何与系统安装的gradle构建联系。
External Libraries://不是一个文件夹,只是依赖lib文件,如SDK等。

新建工程项目后AS的Module目录结构如下所示: 
_024_Android_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构建脚本

 

1.res资源文件夹介绍:

res目录下所有的资源文件都会在R.java文件下生成对应的资源id,我们可以直接通过资源id访问到对应的资源;这个R文件可以理解为字典,res下每个资源都都会在这里生成一个唯一的id!

//代码提示快捷键:Ctrl+Alt+空格键选中activity_main可以打开到指定的R.java文件中。
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

2.深入了解三个文件:

好了,接下来我们就要剖析工程里三个比较重要的文件: MainActivity.java,布局文件:activity_main和Android配置文件:AndroidManifest.xml

MainActivity.java:

_024_Android_Android Studio目录结构及工程项目结构解析

布局文件:activity_main.xml:

_024_Android_Android Studio目录结构及工程项目结构解析

配置文件AndroidManifest.xml:

AndroidManifest文件中含有如下过滤器的Activity组件为默认启动类当程序启动时系统自动调用它

<intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
  • _024_Android_Android Studio目录结构及工程项目结构解析