602 lines
24 KiB
Plaintext
602 lines
24 KiB
Plaintext
# 项目结构文档
|
||
|
||
## 一、项目基本信息
|
||
|
||
### 1.1 项目概述
|
||
- **项目名称**: peizhen(配真)
|
||
- **应用包名**: com.ruilaizi.service
|
||
- **命名空间**: com.ruilaizi.service
|
||
- **项目类型**: Android 原生应用
|
||
- **开发语言**: Java
|
||
- **构建工具**: Gradle
|
||
- **Android Gradle Plugin 版本**: 8.7.3
|
||
|
||
### 1.2 应用配置
|
||
- **应用ID**: com.ruilaizi.service
|
||
- **版本号**: 101
|
||
- **版本名称**: 1.0.1
|
||
- **最低SDK版本**: 26 (Android 8.0)
|
||
- **目标SDK版本**: 34 (Android 14)
|
||
- **编译SDK版本**: 34
|
||
- **构建工具版本**: 30.0.2
|
||
- **支持多Dex**: 是
|
||
|
||
### 1.3 签名配置
|
||
- **签名文件1**: july.jks
|
||
- **签名文件2**: ruilaizi.jks
|
||
|
||
## 二、项目模块结构
|
||
|
||
### 2.1 主模块 (app)
|
||
- **类型**: Android Application
|
||
- **功能**: 主应用模块,包含所有业务逻辑和UI
|
||
|
||
### 2.2 基础库模块 (baselibs)
|
||
- **类型**: Android Library
|
||
- **命名空间**: com.ruilaizi.baselibs
|
||
- **状态**: 已配置但未在主模块中引用(已注释)
|
||
- **功能**: 基础工具库(目前为空)
|
||
|
||
### 2.3 城市选择器模块 (citypicker)
|
||
- **类型**: Android Library
|
||
- **命名空间**: com.zaaach.citypicker
|
||
- **状态**: 已移除(在settings.gradle中已注释,避免D8编译问题)
|
||
- **功能**: 城市选择器组件
|
||
|
||
## 三、项目目录结构
|
||
|
||
```
|
||
peizhen/
|
||
├── app/ # 主应用模块
|
||
│ ├── build/ # 构建输出目录
|
||
│ ├── libs/ # 本地JAR库
|
||
│ ├── release/ # Release版本APK输出目录
|
||
│ ├── src/ # 源代码目录
|
||
│ │ ├── main/ # 主源代码
|
||
│ │ │ ├── assets/ # 资源文件(JSON、HTML等)
|
||
│ │ │ ├── java/ # Java源代码
|
||
│ │ │ ├── res/ # 资源文件(布局、图片、字符串等)
|
||
│ │ │ └── AndroidManifest.xml
|
||
│ │ └── test/ # 测试代码
|
||
│ ├── build.gradle # 应用构建配置
|
||
│ ├── proguard-rules.pro # ProGuard混淆规则
|
||
│ ├── july.jks # 签名文件1
|
||
│ └── ruilaizi.jks # 签名文件2
|
||
│
|
||
├── baselibs/ # 基础库模块
|
||
│ ├── src/
|
||
│ │ └── main/
|
||
│ │ ├── java/ # 基础库Java代码
|
||
│ │ ├── res/ # 基础库资源
|
||
│ │ └── AndroidManifest.xml
|
||
│ ├── build.gradle # 库构建配置
|
||
│ └── proguard-rules.pro # 混淆规则
|
||
│
|
||
├── citypicker/ # 城市选择器模块(已移除)
|
||
│ ├── src/
|
||
│ ├── build.gradle
|
||
│ └── proguard-rules.pro
|
||
│
|
||
├── gradle/ # Gradle配置
|
||
│ └── wrapper/ # Gradle Wrapper
|
||
│ ├── gradle-wrapper.jar
|
||
│ └── gradle-wrapper.properties
|
||
│
|
||
├── build.gradle # 项目级构建配置
|
||
├── settings.gradle # 项目设置(模块配置)
|
||
├── gradle.properties # Gradle属性配置
|
||
├── gradlew # Gradle Wrapper脚本(Unix)
|
||
├── gradlew.bat # Gradle Wrapper脚本(Windows)
|
||
├── local.properties # 本地配置(SDK路径等)
|
||
└── peizhen.iml # IntelliJ IDEA项目文件
|
||
```
|
||
|
||
## 四、Java代码包结构
|
||
|
||
### 4.1 主包结构 (com.ruilaizi.service)
|
||
|
||
```
|
||
com.ruilaizi.service/
|
||
├── base/ # 基础类
|
||
│ ├── BaseActivity.java # Activity基类
|
||
│ ├── BaseFragment.java # Fragment基类
|
||
│ ├── BasetwoFragment.java # Fragment基类2
|
||
│ ├── BaseTreeActivity.java # 树形Activity基类
|
||
│ ├── BaseTreeFragment.java # 树形Fragment基类
|
||
│ ├── BaseTreeView.java # 树形视图基类
|
||
│ ├── BaseModel.java # Model基类
|
||
│ ├── BaseBean.java # Bean基类
|
||
│ ├── BaseRecycleAdapter.java # RecyclerView适配器基类
|
||
│ └── BaseViewHolder.java # ViewHolder基类
|
||
│
|
||
├── BaseApplication.java # Application入口类
|
||
│
|
||
├── common/ # 公共类
|
||
│ └── Constants.java # 常量定义
|
||
│
|
||
├── db/ # 数据库相关
|
||
│ ├── dao/ # 数据访问对象
|
||
│ │ ├── DataBaseHelper.java # 数据库帮助类
|
||
│ │ ├── addCustomerDao.java # 客户数据访问
|
||
│ │ └── DbRecordDao.java # 记录数据访问
|
||
│ ├── DbBean.java # 数据库Bean
|
||
│ └── DbRecordBeanData.java # 记录数据Bean
|
||
│
|
||
├── dialog/ # 对话框相关
|
||
│ ├── BaseDialog.java # 对话框基类
|
||
│ ├── BaseTipsDialog.java # 提示对话框
|
||
│ ├── LoadingDialog.java # 加载对话框
|
||
│ ├── MyDialog.java # 自定义对话框
|
||
│ ├── HomeShopDialog.java # 首页商店对话框
|
||
│ └── ...
|
||
│
|
||
├── main/ # 主要业务模块
|
||
│ ├── activity/ # Activity页面
|
||
│ │ ├── SplashActivity.java # 启动页(主入口)
|
||
│ │ ├── MainActivity.java # 主页面
|
||
│ │ ├── Main2Activity.java # 主页面2
|
||
│ │ ├── LoginPasswordActivity.java # 密码登录页
|
||
│ │ ├── NewCodeLoginActivity.java # 验证码登录页
|
||
│ │ ├── ForgetPasActivity.java # 忘记密码页
|
||
│ │ ├── ModifyPasActivity.java # 修改密码页
|
||
│ │ ├── OrderActivity.java # 订单页
|
||
│ │ ├── mingXiActivity.java # 明细页
|
||
│ │ ├── common/ # 公共组件
|
||
│ │ │ ├── databus/ # 数据总线
|
||
│ │ │ ├── http/ # HTTP请求
|
||
│ │ │ ├── storage/ # 存储工具
|
||
│ │ │ └── util/ # 工具类
|
||
│ │ ├── mine/ # 我的模块
|
||
│ │ │ ├── MessageNoticeActivity.java # 消息通知
|
||
│ │ │ └── InboundHistoryActivity.java # 入库历史
|
||
│ │ └── mvp/ # MVP架构
|
||
│ │ ├── contract/ # 契约接口
|
||
│ │ ├── model/ # 数据模型
|
||
│ │ └── presenterImpl/ # presenter实现
|
||
│ │
|
||
│ ├── kehu/ # 客户模块
|
||
│ │ ├── activity/ # 客户相关Activity(16个)
|
||
│ │ │ ├── AddCustomerActivity.java # 添加客户
|
||
│ │ │ ├── CustomerDetailActivity.java # 客户详情
|
||
│ │ │ ├── FpOrderInfoActivity.java # 订单信息
|
||
│ │ │ ├── AllocationActivity.java # 分配
|
||
│ │ │ ├── SearchActivity.java # 搜索
|
||
│ │ │ ├── DesignActivity.java # 设计
|
||
│ │ │ ├── StyleActivity.java # 风格
|
||
│ │ │ ├── BudgetActivity.java # 预算
|
||
│ │ │ └── ...
|
||
│ │ ├── adapter/ # 适配器(11个)
|
||
│ │ ├── Bean/ # 数据Bean(26个)
|
||
│ │ ├── Dialog/ # 对话框(5个)
|
||
│ │ ├── fragment/ # Fragment(11个)
|
||
│ │ └── KehuinfoBean.java # 客户信息Bean
|
||
│ │
|
||
│ ├── my/ # 我的模块
|
||
│ │ ├── activity/ # 我的相关Activity(15个)
|
||
│ │ │ ├── MyInfoActivity.java # 我的信息
|
||
│ │ │ ├── SettingActivity.java # 设置
|
||
│ │ │ ├── PersonalProfileActivity.java # 个人资料
|
||
│ │ │ ├── ShimingActivity.java # 实名
|
||
│ │ │ ├── HongBaoActivity.java # 红包
|
||
│ │ │ ├── ConfirmOrderActivity.java # 确认订单
|
||
│ │ │ ├── TwoWayActivity.java # 双向
|
||
│ │ │ ├── ListActivity.java # 列表
|
||
│ │ │ ├── refuseActivity.java # 拒绝
|
||
│ │ │ └── ...
|
||
│ │ ├── adapter/ # 适配器(8个)
|
||
│ │ ├── entity/ # 实体类(22个)
|
||
│ │ ├── fragment/ # Fragment(6个)
|
||
│ │ ├── mvp/ # MVP架构(3个文件)
|
||
│ │ └── MyFragment.java # 我的Fragment
|
||
│ │
|
||
│ ├── find/ # 发现模块
|
||
│ │ ├── adapter/ # 适配器(16个)
|
||
│ │ ├── entity/ # 实体类(13个)
|
||
│ │ ├── mvp/ # MVP架构
|
||
│ │ │ ├── contract/ # 契约接口(2个)
|
||
│ │ │ ├── model/ # 数据模型(1个)
|
||
│ │ │ └── presenter/ # presenter(1个)
|
||
│ │ ├── ui/ # UI组件(3个)
|
||
│ │ ├── CommentActivity.java # 评论页
|
||
│ │ ├── ConversationActivity.java # 会话页
|
||
│ │ ├── PriLetFragment.java # 私信Fragment
|
||
│ │ ├── QuestionsFragment.java # 问题Fragment
|
||
│ │ └── OnSatisfactionListener.java
|
||
│ │
|
||
│ └── task/ # 任务模块
|
||
│ ├── HomeFragment.java # 首页Fragment
|
||
│ ├── ViewHolderOne.java # ViewHolder 1
|
||
│ ├── ViewHolderTwo.java # ViewHolder 2
|
||
│ ├── ViewHolderThree.java # ViewHolder 3
|
||
│ ├── ViewHolderFour.java # ViewHolder 4
|
||
│ ├── ViewHolderFive.java # ViewHolder 5
|
||
│ └── ViewHolderSix.java # ViewHolder 6
|
||
│
|
||
├── network/ # 网络请求
|
||
│ ├── ApiCallBack.java # API回调
|
||
│ ├── ApiUtils.java # API工具
|
||
│ ├── http/ # HTTP相关
|
||
│ │ ├── ApiUtils.java
|
||
│ │ ├── MyApi.java
|
||
│ │ ├── ResponseBean.java
|
||
│ │ ├── ResponseBeanx.java
|
||
│ │ ├── LifeTreeAPIException.java
|
||
│ │ └── LifeTreeConverterFactory.java
|
||
│ ├── LifeTreeAPIException.java
|
||
│ ├── LifeTreeConverterFactory.java
|
||
│ └── WeChatApi.java # 微信API
|
||
│
|
||
├── okgonet/ # OkGo网络库封装
|
||
│ ├── Func1.java
|
||
│ ├── HttpConstants.java # HTTP常量
|
||
│ ├── NetApi.java # 网络API
|
||
│ ├── Observable.java
|
||
│ └── Observer.java
|
||
│
|
||
├── utils/ # 工具类
|
||
│ ├── AbImageUtil.java # 图片工具
|
||
│ ├── AbStrUtil.java # 字符串工具
|
||
│ ├── BaseAdapter.java # 适配器基类
|
||
│ ├── CloseUtils.java # 关闭工具
|
||
│ ├── DensityUtil.java # 密度工具
|
||
│ ├── FileIOUtils.java # 文件IO工具
|
||
│ ├── FileUtils.java # 文件工具
|
||
│ ├── GetJsonDataUtil.java # JSON数据获取工具
|
||
│ ├── GlideTools.java # Glide图片加载工具
|
||
│ ├── ImageUtils.java # 图片工具
|
||
│ ├── JsonUtils.java # JSON工具
|
||
│ ├── JumpUtils.java # 跳转工具
|
||
│ ├── LocatData.java # 定位数据
|
||
│ ├── NetUtils.java # 网络工具
|
||
│ ├── PhonenNumUtil.java # 电话号码工具
|
||
│ ├── SharedTools.java # SharedPreferences工具
|
||
│ ├── SPUtils.java # SharedPreferences工具
|
||
│ ├── SpaceItemDecoration.java # RecyclerView间距装饰
|
||
│ ├── StatusBarUtil.java # 状态栏工具
|
||
│ ├── StringUtils.java # 字符串工具
|
||
│ ├── ToastUtils.java # Toast工具
|
||
│ ├── ToolsText.java # 文本工具
|
||
│ ├── ToolsUtils.java # 工具类
|
||
│ ├── UiUtils.java # UI工具
|
||
│ ├── Utils.java # 通用工具
|
||
│ ├── VerificationUtils.java # 验证工具
|
||
│ ├── WebViewJavaScriptFunction.java # WebView JS交互
|
||
│ ├── WidgetTools.java # 控件工具
|
||
│ ├── X5WebView.java # X5 WebView
|
||
│ └── checkVersionsUtils/ # 版本检查工具
|
||
│ └── ProfileSpUtils.java # 用户资料存储工具
|
||
│
|
||
├── view/ # 自定义视图
|
||
│ ├── DynamicWave.java # 动态波浪
|
||
│ ├── HeadZoomScrollView.java # 头部缩放滚动视图
|
||
│ ├── MyScrollView.java # 自定义滚动视图
|
||
│ ├── StatusBarView.java # 状态栏视图
|
||
│ └── webview/ # WebView相关
|
||
│ └── XfiveWebActivity.java # X5 WebView Activity
|
||
│
|
||
├── widget/ # 自定义控件
|
||
│ ├── CircleImageView.java # 圆形图片视图
|
||
│ ├── ItemProView.java # 项目视图
|
||
│ ├── ItemView.java # 项目视图
|
||
│ ├── ListViewForScrollView.java # 可滚动ListView
|
||
│ ├── PastEditText.java # 自定义EditText
|
||
│ ├── TagView.java # 标签视图
|
||
│ └── TitleBar.java # 标题栏
|
||
│
|
||
└── wxapi/ # 微信API
|
||
├── WXEntryActivity.java # 微信入口Activity
|
||
└── WXPayEntryActivity.java # 微信支付入口Activity
|
||
```
|
||
|
||
### 4.2 代码统计
|
||
- **Java文件总数**: 296个
|
||
- **主要业务模块**:
|
||
- 客户模块 (kehu): 约70+个文件
|
||
- 我的模块 (my): 约60+个文件
|
||
- 发现模块 (find): 约35+个文件
|
||
- 任务模块 (task): 7个文件
|
||
|
||
## 五、资源文件结构
|
||
|
||
### 5.1 资源目录 (app/src/main/res/)
|
||
|
||
```
|
||
res/
|
||
├── anim/ # 动画资源(10个XML文件)
|
||
│ ├── dialog_dismiss.xml
|
||
│ ├── dialog_in_anim.xml
|
||
│ ├── dialog_out_anim.xml
|
||
│ ├── dialog_show.xml
|
||
│ ├── push_bottom_in2.xml
|
||
│ ├── push_bottom_out2.xml
|
||
│ ├── scale_in.xml
|
||
│ ├── scale_out.xml
|
||
│ ├── slide_in_bottom.xml
|
||
│ └── slide_out_bottom.xml
|
||
│
|
||
├── color/ # 颜色资源(3个XML文件)
|
||
│ ├── color_selector_text_goods_classify.xml
|
||
│ ├── color_selector_text_send_code.xml
|
||
│ └── selector_tag_text.xml
|
||
│
|
||
├── drawable/ # 可绘制资源(约60个XML/PNG文件)
|
||
│ ├── 各种背景、形状、选择器XML文件
|
||
│ └── 图标PNG文件
|
||
│
|
||
├── drawable-hdpi/ # 高密度图标
|
||
├── drawable-mdpi/ # 中等密度图标
|
||
├── drawable-xhdpi/ # 超高密度图标和资源
|
||
├── drawable-xxhdpi/ # 超超高密度图标
|
||
├── drawable-xxxhdpi/ # 超超超高密度图标
|
||
│
|
||
├── layout/ # 布局文件(133个XML文件)
|
||
│
|
||
├── mipmap-*/ # 应用图标(多密度)
|
||
│ ├── mipmap-hdpi/ # 66个文件(65 PNG + 1 JPG)
|
||
│ ├── mipmap-mdpi/ # 67个文件(66 PNG + 1 JPG)
|
||
│ ├── mipmap-xhdpi/ # 89个文件(87 PNG + 2 JPG)
|
||
│ ├── mipmap-xxhdpi/ # 132个文件(126 PNG + 5 JPG + 1 GIF)
|
||
│ └── mipmap-xxxhdpi/ # 77个文件(74 PNG + 3 JPG)
|
||
│
|
||
├── values/ # 值资源(5个XML文件)
|
||
│ ├── strings.xml # 字符串资源
|
||
│ ├── styles.xml # 样式资源
|
||
│ ├── colors.xml # 颜色值
|
||
│ ├── dimens.xml # 尺寸值
|
||
│ └── themes.xml # 主题
|
||
│
|
||
├── values-en/ # 英文值资源(1个XML文件)
|
||
├── values-v15/ # API 15+值资源
|
||
├── values-w820dp/ # 平板值资源
|
||
│
|
||
└── xml/ # XML配置文件(2个文件)
|
||
├── network_security_config.xml # 网络安全配置
|
||
└── file_paths_public.xml # FileProvider路径配置
|
||
```
|
||
|
||
### 5.2 资源统计
|
||
- **布局文件**: 133个
|
||
- **图片资源**: 434个PNG + 12个JPG + 1个GIF
|
||
- **动画资源**: 10个
|
||
- **颜色资源**: 3个
|
||
- **可绘制资源**: 约60个
|
||
|
||
### 5.3 Assets资源 (app/src/main/assets/)
|
||
|
||
```
|
||
assets/
|
||
├── city.json # 城市数据
|
||
├── customerList.json # 客户列表数据
|
||
├── dede.json # 数据文件
|
||
├── edsf.json # 数据文件
|
||
├── fpList.json # 列表数据
|
||
├── fpOrderInfo.json # 订单信息数据
|
||
├── jiazaidonghua.json # 加载动画数据
|
||
├── logingpwd.json # 登录密码数据
|
||
├── orderList.json # 订单列表数据
|
||
├── privacy.html # 隐私政策HTML
|
||
├── privateList.json # 私有列表数据
|
||
├── province.json # 省份数据
|
||
├── ssssd.json # 数据文件
|
||
└── yunweixin.json # 运维微信数据
|
||
```
|
||
|
||
## 六、第三方依赖库
|
||
|
||
### 6.1 网络请求库
|
||
- **Retrofit**: 2.4.0(HTTP客户端)
|
||
- **OkHttp**: 3.5.0(通过Retrofit)
|
||
- **OkGo**: 3.0.4(网络请求框架)
|
||
- **OkRx2**: 2.0.2(RxJava2适配)
|
||
- **OkServer**: 2.0.5(下载管理)
|
||
|
||
### 6.2 响应式编程
|
||
- **RxJava**: 1.0.14(旧版本)
|
||
- **RxJava2**: 2.2.6(新版本)
|
||
- **RxAndroid**: 1.1.0(旧版本)
|
||
- **RxAndroid2**: 2.1.1(新版本)
|
||
- **RxBinding**: 2.1.1(响应式UI绑定)
|
||
- **RxPermissions**: 0.10.2(权限处理)
|
||
|
||
### 6.3 UI组件库
|
||
- **AndroidX AppCompat**: 1.0.0
|
||
- **AndroidX Material**: 1.0.0
|
||
- **AndroidX ConstraintLayout**: 1.1.3
|
||
- **AndroidX RecyclerView**: 1.0.0
|
||
- **XRecyclerView**: 1.3.2(下拉刷新)
|
||
- **BaseRecyclerViewAdapterHelper**: 2.9.30(RecyclerView适配器)
|
||
- **ImmersionBar**: 3.0.0(沉浸式状态栏)
|
||
- **Lottie**: 3.4.0(动画库)
|
||
- **BannerView**: 1.0(轮播图)
|
||
- **AutoVerticalTextview**: 0.1(垂直滚动文本)
|
||
|
||
### 6.4 图片处理
|
||
- **Glide**: 4.9.0(图片加载)
|
||
- **Picasso**: 2.5.2(图片加载)
|
||
- **Luban**: 1.1.8(图片压缩)
|
||
- **Matisse**: 0.5.3-beta3(图片选择器)
|
||
|
||
### 6.5 数据解析
|
||
- **Gson**: 2.7(JSON解析)
|
||
- **Fastjson**: 1.1.43.android(本地JAR)
|
||
- **Jsoup**: 1.10.1(HTML解析)
|
||
|
||
### 6.6 数据库
|
||
- **OrmLite**: 5.1(ORM数据库框架)
|
||
|
||
### 6.7 其他功能库
|
||
- **ZXing**: 3.3.0(二维码扫描)
|
||
- **SystemBarTint**: 1.0.4(状态栏颜色)
|
||
- **EventBus**: 2.4.0(本地JAR,事件总线)
|
||
- **Android-PickerView**: 4.1.9(三级联动选择器)
|
||
- **VerificationCodeInput**: 1.5(验证码输入)
|
||
- **EasyPermissions**: 1.2.0(权限处理)
|
||
- **Lifecycle Extensions**: 2.0.0(生命周期扩展)
|
||
- **MVP**: 3.0.0-alpha4(Hannesdorfmann MVP框架)
|
||
|
||
### 6.8 微信SDK(本地JAR)
|
||
- **wechat-sdk-android-without-mta**: 1.0.2
|
||
- **ShareSDK-Wechat-Core**: 2.8.3
|
||
- **tbs_sdk_thirdapp**: 3.2.0.1104(腾讯浏览服务)
|
||
|
||
### 6.9 地图定位
|
||
- **高德地图定位SDK**: latest.integration
|
||
|
||
## 七、项目架构
|
||
|
||
### 7.1 架构模式
|
||
- **MVP模式**: 部分模块使用MVP架构(main/activity/mvp、main/find/mvp、main/my/mvp)
|
||
- **MVC模式**: 部分模块使用传统MVC模式
|
||
- **DataBinding**: 启用数据绑定(enabled=true)
|
||
|
||
### 7.2 主要设计模式
|
||
- **基类模式**: BaseActivity、BaseFragment等基类
|
||
- **适配器模式**: BaseRecycleAdapter等
|
||
- **观察者模式**: RxJava响应式编程
|
||
- **单例模式**: BaseApplication等
|
||
|
||
### 7.3 数据存储
|
||
- **SharedPreferences**: ProfileSpUtils、SPUtils、SharedTools
|
||
- **数据库**: OrmLite(DataBaseHelper)
|
||
- **文件存储**: FileUtils、FileIOUtils
|
||
|
||
### 7.4 网络架构
|
||
- **Retrofit + RxJava**: 主要网络请求方式
|
||
- **OkGo**: 辅助网络请求框架
|
||
- **统一异常处理**: LifeTreeAPIException、LifeTreeConverterFactory
|
||
|
||
## 八、应用入口和主要流程
|
||
|
||
### 8.1 应用入口
|
||
- **Application**: BaseApplication
|
||
- **启动Activity**: SplashActivity(启动页)
|
||
- **主Activity**: MainActivity(主页面)
|
||
|
||
### 8.2 主要功能模块
|
||
1. **登录模块**
|
||
- SplashActivity(启动页)
|
||
- NewCodeLoginActivity(验证码登录)
|
||
- LoginPasswordActivity(密码登录)
|
||
- ForgetPasActivity(忘记密码)
|
||
|
||
2. **主功能模块**
|
||
- MainActivity(主页面,包含多个Fragment)
|
||
- HomeFragment(首页)
|
||
- MyFragment(我的)
|
||
- TraceFragment(追踪)
|
||
|
||
3. **客户管理模块** (kehu)
|
||
- 客户列表、添加客户、客户详情
|
||
- 订单管理、分配、搜索等
|
||
|
||
4. **我的模块** (my)
|
||
- 个人信息、设置、订单管理
|
||
- 实名认证、红包等
|
||
|
||
5. **发现模块** (find)
|
||
- 会话、评论、私信等社交功能
|
||
|
||
## 九、构建配置
|
||
|
||
### 9.1 Gradle配置
|
||
- **Gradle版本**: 通过gradle-wrapper.properties配置
|
||
- **Android Gradle Plugin**: 8.7.3
|
||
- **Java版本**: 1.8(sourceCompatibility、targetCompatibility)
|
||
- **构建工具版本**: 30.0.2
|
||
|
||
### 9.2 构建类型
|
||
- **Debug**: 开发调试版本
|
||
- **Release**: 发布版本(代码混淆:minifyEnabled false)
|
||
|
||
### 9.3 代码混淆
|
||
- **ProGuard规则文件**: app/proguard-rules.pro
|
||
- **当前状态**: Release版本未启用混淆(minifyEnabled false)
|
||
|
||
### 9.4 仓库配置
|
||
- **阿里云Maven镜像**: 主要使用阿里云镜像加速
|
||
- **JitPack**: 用于GitHub项目依赖
|
||
- **Google Maven**: Google官方仓库
|
||
- **JCenter**: 备用仓库
|
||
|
||
## 十、特殊配置
|
||
|
||
### 10.1 权限配置
|
||
应用申请了以下主要权限:
|
||
- 网络权限(INTERNET、ACCESS_NETWORK_STATE)
|
||
- 存储权限(READ_EXTERNAL_STORAGE、WRITE_EXTERNAL_STORAGE)
|
||
- 定位权限(ACCESS_COARSE_LOCATION、ACCESS_FINE_LOCATION)
|
||
- 相机权限(CAMERA)
|
||
- 录音权限(RECORD_AUDIO)
|
||
- 电话权限(CALL_PHONE、READ_PHONE_STATE)
|
||
- 联系人权限(READ_CONTACTS)
|
||
- 悬浮窗权限(SYSTEM_ALERT_WINDOW)
|
||
- 安装权限(REQUEST_INSTALL_PACKAGES)
|
||
|
||
### 10.2 功能特性
|
||
- **多Dex支持**: 启用(突破65535方法数限制)
|
||
- **DataBinding**: 启用
|
||
- **网络安全配置**: network_security_config.xml
|
||
- **FileProvider**: 文件共享提供者
|
||
- **微信集成**: 微信登录、支付、分享
|
||
|
||
### 10.3 已知问题
|
||
- **citypicker模块**: 已移除,避免D8编译问题
|
||
- **baselibs模块**: 已配置但未使用
|
||
- **签名配置重复**: build.gradle中存在两个signingConfigs配置
|
||
|
||
## 十一、项目特点
|
||
|
||
### 11.1 技术特点
|
||
- 使用AndroidX库
|
||
- 支持DataBinding数据绑定
|
||
- 响应式编程(RxJava)
|
||
- MVP架构模式
|
||
- 多模块化设计(虽然部分模块未使用)
|
||
|
||
### 11.2 业务特点
|
||
- 客户管理系统
|
||
- 订单管理系统
|
||
- 社交功能(发现模块)
|
||
- 个人中心
|
||
- 微信集成(登录、支付、分享)
|
||
|
||
### 11.3 开发特点
|
||
- 代码量较大(296个Java文件)
|
||
- 资源文件丰富(679个资源文件)
|
||
- 使用多种第三方库
|
||
- 本地JAR库较多(4个)
|
||
|
||
## 十二、文件统计
|
||
|
||
### 12.1 代码文件
|
||
- **Java文件**: 296个
|
||
- **XML布局文件**: 133个
|
||
- **资源XML文件**: 约100+个
|
||
|
||
### 12.2 资源文件
|
||
- **PNG图片**: 434个
|
||
- **JPG图片**: 12个
|
||
- **GIF图片**: 1个
|
||
- **JSON数据文件**: 13个
|
||
- **HTML文件**: 1个
|
||
|
||
### 12.3 配置文件
|
||
- **Gradle文件**: 4个(build.gradle × 3 + settings.gradle)
|
||
- **ProGuard规则**: 3个
|
||
- **签名文件**: 2个(.jks)
|
||
|
||
---
|
||
|
||
## 文档说明
|
||
|
||
**生成时间**: 2025年1月
|
||
**项目路径**: D:\androidPj\peizhen
|
||
**文档版本**: 1.0
|
||
|
||
**注意事项**:
|
||
1. 本文档基于当前项目结构生成
|
||
2. 部分模块可能已移除或未使用(如citypicker、baselibs)
|
||
3. 文件数量为统计值,实际可能略有差异
|
||
4. 建议定期更新本文档以保持准确性
|
||
|