版权声明:本文为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. json & pickle 序列化

    #!/usr/bin/python # -*- coding: utf-8 -*- # 序列化: 例如把字典写进文件 info = { 'name': 'alex', 'age': 22 } f = ...

  2. HashMap浅入理解

    HashMap不能保证元素的顺序,HashMap能够将键设为null,也可以将值设为null,与之对应的是Hashtable,(注意大小写:不是HashTable),Hashtable不能将键和值设为 ...

  3. 理解、学习与使用 Java 中的 Optional

    从 Java 8 引入的一个很有趣的特性是 Optional  类.Optional 类主要解决的问题是臭名昭著的空指针异常(NullPointerException) -- 每个 Java 程序员都 ...

  4. handler.go

    {         w.WriteHeader(http.StatusAccepted)     } else {         errStr := ""         for ...

  5. 拯救莫莉斯 状压dp

    题目大意:每个点有费用,要求选出花费最少的一些点,使得全部点都满足:他被选或与他相邻的任意点被选. 没看清数据范围233333 和翻格子游戏一样,考虑上中下三行,可行才能转移 f[i][j][k]表示 ...

  6. BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈

    BZOJ_1345_[Baltic2007]序列问题Sequence_单调栈 Description 对于一个给定的序列a1,…,an,我们对它进行一个操作reduce(i),该操作将数列中的元素ai ...

  7. css3 深入理解flex布局

    一.简要介绍 css3最喜欢的新属性之一便是flex布局属性,用六个字概括便是简单.方便.快速. flex( flexible box:弹性布局盒模型),是2009年w3c提出的一种可以简洁.快速弹性 ...

  8. Spring 系列之Spring常用注解总结

    传统的Spring做法是使用.xml文件来对bean进行注入或者是配置aop.实物,这么做有两个缺点: 1.如果所有的内容都配置在.xml文件中,那么.xml文件将会十分庞大:如果按需求分开.xml文 ...

  9. c#Socket服务器与客户端的开发(1)

    上个项目中用到了Socket通讯,项目中直接借助SuperSocket实现,但是我觉得这毕竟是一个我没接触过的东西,所以也顺便学习了一下原生socket的使用,做了一个socket服务器与客户端的开发 ...

  10. 使用Scala IDE for Eclipse遇到build errors错误的解决办法

    在编写第一个Scala语言的Spark程序时,在Scala IDE for Eclipse中运行程序时出现“Project XXXX contains build errors, Continue l ...