Android项目目录结构模板以及简单说明【简单版】
版权声明:本文为HaiyuKing原创文章,转载请注明出处!
概述
开发Android项目的时候,一般都是一边开发一边根据需求创建目录(包、module),那么我呢就根据以往的项目经验,整理出一个比较简单的目录结构,供以后项目开发参考。
注意:这里只是项目的目录结构图,不涉及里面的代码。其中部分必须的代码参考《Android多Module下的Application引用方式》、《Activity、fragment、dialog基类简单整理》
项目组织结构图





简单说明
app
assets目录:建议项目中需要放到assets目录的文件都放到这里,尽量不放到其他module的assets中(比如base、thirslib),这样便于统一管理;
activity目录:

BaseActivity和与项目业务无关的activity(比如WelcomeActivity)放到包的根目录下,其他与项目业务相关的activity放到新建的以业务名称命名的子包目录下,如果项目比较简单,那么就统一放到normal目录下即可。
adapter目录:适配器类集合
bean目录:实体类集合
dialog目录:

BaseDialogFragment放到包的根目录下,其他与项目业务相关的dialog放到新建的以业务名称命名的子包目录下,如果项目比较简单,那么就统一放到normal目录下即可。
enumtype目录:枚举类集合
fragment目录:

BaseFragment放到包的根目录下,其他与项目业务相关的fragment放到新建的以业务名称命名的子包目录下,如果项目比较简单,那么就统一放到normal目录下即可。
listener目录:监听器类集合
mvp目录:mvp模式的根目录
mvp/iview目录:mvp模式中的V
mvp/model目录:mvp模式中的M
mvp/presenter目录:mvp模式中的P
utils目录:常用工具类集合(注意,区别base中的utils目录,这里是仅在app中用到的工具类,不是通用工具类集合,通用工具类集合在base/utils目录中)
views目录:自定义view集合(注意,区别base中的views目录,这里是仅在app中用到的自定义view,不是通用自定义view集合,通用自定义view集合在base/views目录中)
MyApplication.java文件:项目声明的自定义Application类(注意:项目中所有需要在自定义Application中声明的方法,比如引入第三方平台时一些配置,都需要写在这里,而不是base中的BaseApplication或者thirdlib中的ThirdApplication中;)
res目录:就不需要多说了,需要注意,drawable-hdpi、mdpi、xhdpi、xxhdpi、xxxhdpi目录需要自己创建,新建项目后没有的目录或者文件,可以从这里复制过去,当然了,自己新建目录或者文件即可。

build.gradle文件:只需要引用其他module即可。参考《Android Studio配置统一管理依赖版本号引用》
proguard-rules.pro文件:代码混淆配置。注意:项目中所有的代码混淆配置都写在这里,不要分开在base或者thirdlib中写。
base:其他module都可以引用base这个module
dialog目录:通用对话框集合(比如确认取消对话框等)
utils目录:通用工具类集合
views目录:通用自定义view集合
BaseApplication.java文件:Application基类,主要用于不同module中应用ApplicationContext对象。
res目录:就不多说了

thirdlib:第三方平台sdk集合
libs目录:第三方平台sdk中jar、arr文件集合
ThirdApplication.java文件:没有什么用,主要是为了以后在com.why.project.thirdlib下新建子包方便。
res目录:就不多说了

参考资料
暂时空缺
项目demo下载地址
https://github.com/haiyuKing/MyAppTemplet
Android项目目录结构模板以及简单说明【简单版】的更多相关文章
- Android项目目录结构模板以及简单说明
1) src 文件 编写java代码的文件目录,遵循java的命名规范.分包 2) gen 文件 包含了android的资源文件的标识符,是不需要程序员维护,是自动添加的 3) asse ...
- Android项目目录结构
JDK JDK是java语言的软件开发工具包,它包含了java的运行环境,工具集合,基础类库等内容 Android SDK 是谷歌提供的 Android 开发包,在开发Android 项目的时候 ...
- Android开发学习之路--Android Studio项目目录结构简介
既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最简单的Hello工程为例子,新建好工程后看如下三个工程视图: 1.Android工程 manifests ...
- 【Android Studio安装部署系列】三、Android Studio项目目录结构
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 简单介绍下Android studio新建项目的目录结构. 常用项目结构类型 在Android Studio中,提供了以下几种项目结 ...
- ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 基本项目目录结构 上一章节中我们成功创建了一个名为 Hell ...
- Android开发新手学习总结(六)——android开发目录结构【图文版】
转载链接:http://bbs.itcast.cn/thread-87059-1-1.html?rss 既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最 ...
- Android Studio目录结构浅析
让我们来简单了解下Android Studio中不同目录(文件)的位置和用途.首先看下一个App的最简单的目录结构 OK,我们这么看,第一,把这么多文件先分成这么三块1. 编译系统(Gradle)2. ...
- Android项目目录结构分析
Android项目目录结构分析 1.HelloWorld项目的目录结构1.1.src文件夹1.2.gen文件夹1.3.Android 2.1文件夹1.4.assets 1.5.res文件夹1.6.An ...
- android studio 目录结构讲解
android studio 目录结构讲解 src 毫无疑问,src目录是放置我们所有 Java代码的地方,它在这里的含义和普通 Java 项目下的 src目录是完全一样的,展开之后你将看到我们刚才创 ...
随机推荐
- Python Assert 为何不尽如人意
Python中的断言用起来非常简单,你可以在assert后面跟上任意判断条件,如果断言失败则会抛出异常. >>> assert 1 + 1 == 2 >>> ass ...
- .net core微服务之基于Docker+Consul+Registrator服务注册服务发现
一.Docker部分: 先拉最新的asp.net core的镜像: docker pull microsoft/aspnetcore 将下载下来的镜像重命名,为什么要重命名?等会讲Registrato ...
- 【bzoj 4176】 Lucas的数论 莫比乌斯反演(杜教筛)
Description 去年的Lucas非常喜欢数论题,但是一年以后的Lucas却不那么喜欢了. 在整理以前的试题时,发现了这样一道题目“求Sigma(f(i)),其中1<=i<=N”,其 ...
- [POI2007]洪水pow bfs
发现:只在所有自己的城市建水泵一定是最优解. 所以对自己的城市按高度排序,该城市不用建的前提是从他出发经过一条高度都小于等于他的路径能到达一个已经修建水泵的 sort+bfs...... #inclu ...
- JQuery 将div中的内容替换掉
$("#div2").children().replaceWith($("#userText").val());谷歌没有效果. $("#div2&qu ...
- 利用FT232实现USB转串口
FT232B数据手册:http://www.ftdichip.com/Support/Documents/DataSheets/ICs/DS_FT232BL_BQ.pdf 常用的USB转串口的芯片有F ...
- python里面的xlrd模块详解(一)
那我就一下面积个问题对xlrd模块进行学习一下: 1.什么是xlrd模块? 2.为什么使用xlrd模块? 3.怎样使用xlrd模块? 1.什么是xlrd模块? python操作excel主要用到xlr ...
- EffictiveC++笔记 第2章
Chapter 2 构造 / 析构 / 赋值 条款 05:了解C++ 默默编写并调用哪些函数 如果你写下: class Empty{ }; 事实上编译器会帮你补全: class Empty{ publ ...
- Map集合中,关于取值和遍历的相关操作
这是自己的关于map集合的相关操作的小研究,分享给大家. 主要代码内容包含以下: 1,map集合的遍历 2,根据key值获取value值 3,根据value值获取key值 4,返回最大value值对应 ...
- 8天入门docker系列 —— 第四天 使用aspnetcore小案例熟悉端口映射和挂载目录
到目前为止大家应该对镜像和容器有了一个大概认知,而且也用了docker进行了一个简单化的部署,但仔细一看问题还有很多,所以这篇我们继续完善. 一:如何让外网访问到容器内应用 我们知道容器内拥有自己的子 ...