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

       应该还有不少人纠结到底用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,计划未来将支持更多的语言。


参考:

http://blog.csdn.net/yanbober/article/details/45306483

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

http://blog.csdn.net/yanbober/article/details/45306483

https://developer.android.com/studio/projects/index.html


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值