版权声明:本文为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项目目录结构模板以及简单说明【简单版】的更多相关文章

  1. Android项目目录结构模板以及简单说明

    1) src  文件 编写java代码的文件目录,遵循java的命名规范.分包 2) gen  文件      包含了android的资源文件的标识符,是不需要程序员维护,是自动添加的 3) asse ...

  2. Android项目目录结构

    JDK JDK是java语言的软件开发工具包,它包含了java的运行环境,工具集合,基础类库等内容   Android SDK 是谷歌提供的 Android 开发包,在开发Android 项目的时候 ...

  3. Android开发学习之路--Android Studio项目目录结构简介

    既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最简单的Hello工程为例子,新建好工程后看如下三个工程视图: 1.Android工程 manifests ...

  4. 【Android Studio安装部署系列】三、Android Studio项目目录结构

    版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 简单介绍下Android studio新建项目的目录结构. 常用项目结构类型 在Android Studio中,提供了以下几种项目结 ...

  5. ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 基本项目目录结构 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 基本项目目录结构 上一章节中我们成功创建了一个名为 Hell ...

  6. Android开发新手学习总结(六)——android开发目录结构【图文版】

    转载链接:http://bbs.itcast.cn/thread-87059-1-1.html?rss 既然已经搭建好环境了,那就对Android Studio中项目目录结构做个简单的了解了,这里以最 ...

  7. Android Studio目录结构浅析

    让我们来简单了解下Android Studio中不同目录(文件)的位置和用途.首先看下一个App的最简单的目录结构 OK,我们这么看,第一,把这么多文件先分成这么三块1. 编译系统(Gradle)2. ...

  8. Android项目目录结构分析

    Android项目目录结构分析 1.HelloWorld项目的目录结构1.1.src文件夹1.2.gen文件夹1.3.Android 2.1文件夹1.4.assets 1.5.res文件夹1.6.An ...

  9. android studio 目录结构讲解

    android studio 目录结构讲解 src 毫无疑问,src目录是放置我们所有 Java代码的地方,它在这里的含义和普通 Java 项目下的 src目录是完全一样的,展开之后你将看到我们刚才创 ...

随机推荐

  1. BZOJ_1877_[SDOI2009]晨跑_费用流

    BZOJ_1877_[SDOI2009]晨跑_费用流 题意: Elaxia最近迷恋上了空手道,他为自己设定了一套健身计划,比如俯卧撑.仰卧起坐等 等,不过到目前为止,他 坚持下来的只有晨跑. 现在给出 ...

  2. C语言实现十六进制字符串转数字

    代码: int StringToInt(char *hex) { ]) * + CharToInt(hex[]); } int CharToInt(char hex) { ') '; if (hex& ...

  3. openoffice转换pdf 异常问题查找处理 errorCode 525

    could not save output document; OOo errorCode: 525 该问题是由于java程序和openoffice的启动所属用户不同导致.使用以下命令查看端口和进程 ...

  4. 【SAP业务模式】之STO(二):系统配置

    本篇博文开始讲述STO业务模式的配置! 一.定义发货工厂的装运数据: 目录:SPRO-物料管理-采购-采购订单-设置库存调拨订单-定义工厂的装运数据 定义发货工厂的装运数据: 为收货工厂分配客户代码: ...

  5. 设计模式-策略模式(strategy pattern)

    来说说设计模式吧,最近开始看设计模式,觉得挺有意思的.设计模式网上的资料的挺多的,而且大部分是大家相互转来转去的.感觉也挺没有意思.我就自己写一点吧! 开始 学习设计模式,我会用自己的画的UML类图来 ...

  6. Node中流的概念

    在学习node的过程中,对于流的概念一直不是很理解,通过查阅一些资料,现在将自己对流的一些理解进行总结一下. 一.流的理解 首先我们必须知道什么是流,很多书中只是提到使用流读写文件怎么怎么方便,却不提 ...

  7. ASP.NET Core 实现带认证功能的Web代理服务器

    引言 最近在公司开发了一个项目,项目部署架构图如下: 思路 如图中文本所述,公司大数据集群不允许直接访问外网,需要一个网关服务器代理请求,本处服务器A就是边缘代理服务器的作用. 通常技术人员最快捷的思 ...

  8. android双待手机获取每一张SIM卡的imei

    /** * create a TelephonyInfo.java class */import java.lang.reflect.Method; import android.content.Co ...

  9. Polaristech 刘洋:基于 OpenResty/Kong 构建边缘计算平台

    2019 年 3 月 23 日,OpenResty 社区联合又拍云,举办 OpenResty × Open Talk 全国巡回沙龙·北京站,Polaristech 技术专家刘洋在活动上做了<基于 ...

  10. 『开源』扩展 JS 的 Date 处理函数

    背景: JS 有自己的 时间类型 Date  —— 但是,在某些情况下 这个对象似乎 不太好用. 本文 基于 JQuery 扩展了一些  JS日期函数,包括: > 字符串 转 Date 对象 万 ...