今天开始正式学习Android开发的种种细节,首先从最基本的概念和操作学起。

首先看一下Android项目的目录结构。

这是我随便建立的一个test项目,我们重点关注一下几个方面的内容:

1、src目录:存放Java源代码的目录,里面建立一个包,包里面有4个java源文件(分别都继承自Activity)。由于java要求比较严格,因此要求类名与文件名一致。

2、gen(Generated Java Files)目录:自动产生Java源文件的目录,是由工具自动生成的,一般不需要自己修改。里面主要有一个R.java文件,是一个最终类(不能被继承),定义了一系列的静态变量,方便程序员在程序代码中可以直接引用。

3、assets目录:存放文件资源的目录,与res目录不同,资源复制到此文件夹之后不会在R.java中自动产生id,如果需要用到这里面的文件,需要指定路径。

4、bin目录:跟C#一样,存放最终编译好的可执行程序,以及一些必要的文件。比如这里面就有一个classes.dex文件,这是android虚拟机的运行环境(打包好的文件);而apk文件,就是我们可以在android系统中安装的文件。

5、libs目录:存放引用一些jar包的目录。jar文件其实就是一个zip包(可以直接修改后缀名为zip,然后解压缩查看到里面的class文件),类似于C#中的dll文件(jar里面有多个class文件,而dll是一个文件但是里面可以封装多个程序集)。

6、res目录:存放一些资源的目录。比较重要的有layout(布局)目录和values目录。前者存放布局文件(一个Acvitity可以对应多个layout文件),一些按钮、文本框、下拉框、复选框等等这些元素都可以放置在里面,可以理解为存放这些元素的一个容器。而values目录是存放一些键值对的信息,添加后可以在R.java文件中的final class string当中自动生成相应的id,以便程序中通过R.string.id直接引用。其它的比如drawable是存放图片的目录,menu是设置菜单项的地方。

7、AndroidManifest.xml文件:这是一个Android清单文件,所有的Activity都需要在这里面进行注册才能够访问,还可以设置添加权限以及android sdk的版本号等等。

上面简要的介绍了一下Android项目目录结构以及各自的功能,先有个全面基本的认识。

Android开发系列之Android项目的目录结构的更多相关文章

  1. Android开发系列之系统源码目录

    相信大家对于Google给出的那副经典Android架构图非常的熟悉,从下往上依次是Linux内核层(主要是负责硬件管理调度),HAL层(主要是硬件抽象层),libs层+Runtime,Framewo ...

  2. iOS开发——高级篇——iOS 项目的目录结构

    最近闲来无事去面试一下iOS开发,让我感到吃惊的,面试官竟然问怎么分目录结构,还具体问每个子目录的文件名. 目录结构确实非常重要,面试官这么问,无疑是想窥探开发经验.清晰的目录结构,可让人一眼明白相应 ...

  3. Android开发学习——Android项目的目录结构

    Android项目的目录结构: 资源文件夹: 清单配置文件: Android的四大组件在使用前全部需要在清单文件中配置 <?xml version="1.0" encodin ...

  4. Android开发之旅2:HelloWorld项目的目录结构

    引言 前面Android开发之旅:环境搭建及HelloWorld,我们介绍了如何搭建Android开发环境及简单地建立一个HelloWorld项目,本篇将通过HelloWorld项目来介绍Androi ...

  5. android学习——项目的目录结构

    学习开发之前要了解工程目录下的文件夹下文件的用意,是以HelloWorld为例: 1.HelloWorld项目的目录结构 1.1.src文件夹 1.2.gen文件夹 1.3.Android 2.1文件 ...

  6. Android项目的目录结构 初学者记录

    Android项目的目录结构 Activity:应用被打开时显示的界面 src:项目代码 R.java:项目中所有资源文件的资源id Android.jar:Android的jar包,导入此包方可使用 ...

  7. Android 开发系列教程之(一)Android基础知识

    什么是Android Android一词最早是出现在法国作家维里耶德利尔·亚当1986年发表的<未来夏娃>这部科幻小说中,作者利尔·亚当将外表像人类的机器起名为Android,这就是And ...

  8. android项目的目录结构讲解

    参考书籍:<第一行代码Android> 一:android项目的目录结构讲解 1..gradle和.idea         这两个目录下放置的都是Android Studio自动生成的一 ...

  9. [译]:Xamarin.Android开发入门——Hello,Android深入理解

    返回索引目录 原文链接:Hello, Android_DeepDive. 译文链接:Xamarin.Android开发入门--Hello,Android深入理解 本部分介绍利用Xamarin开发And ...

随机推荐

  1. hdu 5497 Inversion 树状数组 逆序对,单点修改

    Inversion Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=5497 ...

  2. Redis的Time Event与File Event的微妙关系

    redis里设计了两类事件,一类是file event,一类是time event. 其中file event主要为网络事件而设计,而time event为一些后台事件设计. 在两类事件的管理设计上, ...

  3. Ubuntu12.10硬盘安装

    今天介绍如下如何在Win7环境下从硬盘安装Ubuntu(我使用的版本是12.10). 1.下载Ubuntu ISO镜像文件ubuntu-12.10-desktop-i386.iso. 2.使用压缩软件 ...

  4. glog摘记

    projcet url:https://code.google.com/p/google-glog/ usage: application-level logging setting flags GL ...

  5. Tricks Device (hdu 5294 最短路+最大流)

    Tricks Device Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) To ...

  6. android学习日记23--Android XML解析

    一.简述 XML语言是跨平台,JAVA对XML语言支持得比较好,android系统的应用层平台是JAVA做的,所以用XML.XML解析比较简单.XML解析就是将获取到的数据分离出来,基本的网络数据传输 ...

  7. Navigation Bar上的返回按钮文本颜色,箭头颜色以及导航栏按钮的颜色

    自从IOS7后UINavigationBar的一些属性的行为发生了变化.你可以在下图看到: 现在,如果你要修改它们的颜色,用下面的代码: self.navigationController.navig ...

  8. Java基础知识强化之网络编程笔记18:Android网络通信之 使用HttpClient的Post / Get 方式读取网络数据(基于HTTP通信技术)

    使用HttpClient进行Get方式通信,通过HttpClient建立网络链接,使用HttpGet方法读取数据,并且通过Response获取Entity返回值. 使用HttpClient进行Post ...

  9. c++20道面试题

    摘自传智播客论坛 问1:请用简单的语言告诉我C++ 是什么?答:C++是在C语言的基础上开发的一种面向对象编程语言,应用广泛.C++支持多种编程范式 --面向对象编程.泛型编程和过程化编程. 其编程领 ...

  10. swift和oc区别----属性部分(参考官方swift2.1文档)

    对于实用过OC的人来说实用swift上手时非常容易的,swift包括了oc的大部分功能,但是swift毕竟是一门新的编程语言,它和OC还是 有很多不同的地方,而且提供了不少新功能,所以本人在读swif ...