android学习2#--studio目录结构
2016-06-06 19:14
363 查看
应该还有不少人纠结到底用Studio还是eclipse+ADT,因为没有用过eclipse+ADT,没有太多话语权,但是Studio毕竟是google的亲儿子,还是建议用Studio。
第一次看到新建工程后的目录结构,相信不少初学者跟我一样,存在迷惑,怎么这么复杂,分别又都代表些什么?疑问来了,学习动力也就来了,百度+google之......
Android view:
通常,新建的Studio项目默认是android view结构,如下图:
它主要包含三部分:
mainfests: 包含
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 專案目錄、架構與結構】:
Java:相信大家都明白是啥玩意
res:下面是res目录下简单的层次结构
基本是由drawable、layout、mipmap、valuse组成。
drawable: 位图文件(.png,.JPG,.GIF)等。
layout: 定义的用户接口布局的XML文件。
mipmap: 针对不同的启动器图标密度可绘制文件。
values: UI需要用到的文字、颜色的各种xml文件。
Progject View:
当你选择Project view时,你看到目录将是很完整的,如下图:
目录层次结构介绍如下:【转自:Android Studio入门到精通 】
关于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
第一次看到新建工程后的目录结构,相信不少初学者跟我一样,存在迷惑,怎么这么复杂,分别又都代表些什么?疑问来了,学习动力也就来了,百度+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
相关文章推荐
- Android开发.9图制作
- Android开发之Intent跳转到系统应用中的拨号界面、联系人界面、短信界面
- android 根据Item数设定ListView高度
- 把数据存储到文件(login案例) android 下的数据存储
- Android——自定义AlertDialog并与Activity进行数据通信
- [Android]PopupWindow 点击外部区域无法关闭的问题
- Android - android.view.InflateException: Binary XML file line #: Error inflating class fragment
- Android EditText 自带清除按钮 (ViewGroup实现)
- Ubuntu 安装 Android-Studio
- android获取版本信息
- Android强制设置横屏或竖屏
- Android蓝牙与全站仪蓝牙仪器数据交互
- 安卓让自己的应用处在栈顶
- Android_Service(基础篇)
- 安卓实现下载
- Android防止进程被杀
- Android Studio编译、导入aar库的方法
- java(Android)线程池
- Android后台监控其他应用是否全屏
- Android之右上角三点menu消失原因