Android开发学习总结(五)——Android应用目录结构分析
一、手动创建android项目
手动创建一个Android项目,命名为HelloWorld,命令如下:
android create project -n HelloWorld -t -p E:/Android/workspace/Helloworld -k me.gacl.helloworld -a Helloworld
上面的命令中,-n指定项目的名称,-t指定android平台,-p指定项目存放路径,-k指定项目包名,-a指定Activity名称。
使用命令 android list targets 可查看可选的android平台,如下图所示:

由于我使用SDK Manager只下载了最新版本的Android5.0.1和Google Inc,因此"android list targets"命令查看到的可选的android平台就只有2个,可以看到,1对应的target是android-21,也就是Android 5.0.1。
运行上面的命令可以在E:/Android/workspace/Helloworld目录下创建一个Android项目,如下图所示:

生成的Android项目的目录结构如下图所示:

二、Android目录结构说明
HelloWorld
|----bin
|----libs
|----res
| |----drawable-ldpi
| |----drawable-mdpi
| |----drawable-hdpi
| |----drawable-xhdpi
| |----layout
| | |----main.xml
| |----values
| |----strings.xml
|----src
| |----me
| |----gacl
| |----helloworld
| |----Helloworld.java
|----AndroidManifest.xml
|----ant.properties
|----build.xml
|----local.properties
|----proguard-project.txt
|----project.properties
下面介绍一下Android项目的主要目录和文件:
【bin】目录:该目录用于存放生成的目标文件,例如Java的二进制文件、资源打包文件(.ap_后缀)、Dalvik虚拟机的可执行性文件(.dex后缀),打包好应用文件(.apk后缀)等。
【libs】目录:该目录用于存放需要使用的第三方jar包文件
【res】目录:该目录用于存放Android项目的各种资源文件,比如【layout】目录存放界面布局文件,例如main.xml,【values】目录下则存放各种XML格式的资源文件, 例如字符串资源文件:strings.xml;颜色资源文件:colors.xml; 尺寸资源文件:dimens.xml。 【drawable-ldpi】、【drawable-mdpi】、【drawable-hdpi】、【drawable-xhdpi】这4个子目录分别用于存放"低分辨率"、"中分辨率"、"高分辨率"、"超高分辨率"的4种图片文件。
【src】目录:该目录用于存放java源文件
【AndroidManifest.xml】文件是Android项目的系统清单文件,它用于控制Android应用的名称、图标、访问权限等整体属性。 除此之外Android应用的Activity、Service、ContentProvider、BroadcastRecevier这4大组件都需要在该文件中配置。
Android开发学习总结(五)——Android应用目录结构分析的更多相关文章
- Android开发学习总结(五)——Android应用目录结构分析(转)
一.手动创建android项目 手动创建一个Android项目,命名为HelloWorld,命令如下: android create project -n HelloWorld -t 1 -p E:/ ...
- Android开发学习之路--Android Studio cmake编译ffmpeg
最新的android studio2.2引入了cmake可以很好地实现ndk的编写.这里使用最新的方式,对于以前的android下的ndk编译什么的可以参考之前的文章:Android开发学习之路– ...
- Android开发学习之路--Android系统架构初探
环境搭建好了,最简单的app也运行过了,那么app到底是怎么运行在手机上的,手机又到底怎么能运行这些应用,一堆的电子元器件最后可以运行这么美妙的界面,在此还是需要好好研究研究.这里从芯片及硬件模块-& ...
- Android开发学习之路--Android Studio项目目录结构简介
既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最简单的Hello工程为例子,新建好工程后看如下三个工程视图: 1.Android工程 manifests ...
- Android开发学习之路-Android Studio开发小技巧
上一次发过了一个介绍Studio的,这里再发一个补充下. 我们都知道,Android Studio的功能是非常强大的,也是很智能的.如果有人告诉你学Android开发要用命令行,你可以告诉他Andro ...
- Android开发学习之路-Android中使用RxJava
RxJava的核心内容很简单,就是进行异步操作.类似于Handler和AsyncTask的功能,但是在代码结构上不同. RxJava使用了观察者模式和建造者模式中的链式调用(类似于C#的LINQ). ...
- Android开发学习之路-Android N新特性-多窗口模式
我们都知道,在最新的Android N系统中,加入了一个新的功能,就是多窗口模式.多窗口模式允许我们在屏幕上显示两个窗口,每个窗口显示的内容不同,也就是说,我们可以一遍看电视剧,一边聊微信. 这里我们 ...
- Android开发学习之路-Android Design Support Library使用(CoordinatorLayout的使用)
效果图: 上面的这个图有两个效果是,一个是顶部的图片,在上滑之后会隐藏起来并且显示出一个ToolBar(ToolBar类似于ActionBar,但是只有ToolBar是兼容Material Desig ...
- Android开发学习笔记-关于Android的消息推送以及前后台切换
下面是最简单的Android的消息推送的实现方法 package com.example.shownotic; import java.util.Random; import android.supp ...
随机推荐
- EXTJS 4 动态grid
var grid=Ext.getCmp("GridPanel1"); var store = grid.getStore(); Ext.Ajax.request({ url:&qu ...
- Android Studio鼠标悬停显示注释
Android Studio鼠标悬停显示注释 在AS中配置 如果你想从网上查看注释,到这一步就操作完成. 下面说明让软件使用本地注释: 使用本地注释 以Windows为例: 找到下面文件 C:\Use ...
- MySQL的错误:No query specified
在做MySQL主从同步的时候通过: mysql> show slave status\G; *************************** 1. row **************** ...
- Dijkstra 最短路算法(只能计算出一条最短路径,所有路径用dfs)
上周我们介绍了神奇的只有五行的 Floyd 最短路算法,它可以方便的求得任意两点的最短路径,这称为"多源最短路".本周来来介绍指定一个点(源点)到其余各个顶点的最短路径,也叫做&q ...
- 集合框架之 List
集合框架就是Java中解决数组长度固定的问题,相当于动态数组,随时用,随时建立,内存释放 这个问题还不知道? 整个集合框架 概括为 List Set Map 这三个接口以及他们的实现类之间的应 ...
- hdu 5818 (优先队列) Joint Stacks
题目:这里 题意: 两个类似于栈的列表,栈a和栈b,n个操作,push a x表示把数x放进a栈的栈底,pop b 表示将栈b的栈顶元素取出输出,并释放这个栈顶元素,merge a b表示把后面的那个 ...
- java-GUI图形用户界面
图形用户界面GUI(Graphical User Interface),指的是在一个程序中用户可以看到的和与之交互的部分. JavaAPI中提供两套组件用于支持编写用户界面AWT and Swin ...
- hdu 4268 Alice and Bob
Alice and Bob Time Limit : 10000/5000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other) Tota ...
- javascript 对象属性的get set访问器写法
function Person() { var age = new Date().getFullYear() - 18; Object.defineProperty(this, &qu ...
- Linux环境下MySQL报Table 'xxx' doesn't exist错误解决方法
修改了lower_case_table_names=1 后,业务发有个库的表打不开了,看了表名以前是大写,查了一下如果设置不区分大小写, 以前的大小表名要改成小写.重启服务后可用! MYSQL在LIN ...