42 lines
1.6 KiB
Markdown
42 lines
1.6 KiB
Markdown
# 光环助手Android客户端
|
||
|
||
### Sourceset/debug/release
|
||
* https://developer.android.com/studio/build/build-variants.html#sourcesets
|
||
|
||
### 多渠道打包配置
|
||
* 使用[ApkChannelPackage](https://github.com/ltlovezh/ApkChannelPackage)的方案
|
||
* 正式打包命令:请使用./gradlew channelPubRelease打包渠道包
|
||
|
||
### 混淆配置
|
||
* 配置文件:Android默认配置+proguard-rules.txt等
|
||
* 参考libraries下每个项目独立的配置文件``proguard-project.txt``
|
||
|
||
### apk大小优化
|
||
* 限制resConfig资源集
|
||
* 开启ShrinkResources
|
||
* 开启混淆,使用minifyEnabled(仅在release开启)
|
||
* pngquant对png压缩、png/jpg->webp(未尝试)
|
||
|
||
### 第三方appkey等配置
|
||
* 修改``gradle.properties``文件将各种key填入其中,实现统一管理
|
||
* 通过gradle文件内的resValue/buildConfigField/manifestPlaceHolder方式实现编译期间修改,具体情况请参考``./build.gradle``和``./app/build.gradle``配置
|
||
|
||
### 拉取代码步骤
|
||
1. 拉取主项目代码: `git clone -b dev git@gitlab.ghzhushou.com:halo/assistant-android.git`
|
||
2. 初始化公用类库: `bash ./scripts/init_submodules.sh`
|
||
|
||
### submodule管理方式(只拉取master)
|
||
* 提交代码,需要cd到submodule文件夹去做修改
|
||
|
||
|
||
|
||
### TODO
|
||
* GSON 序列化用统一的一个, GsonUtil fromJson
|
||
* CleanApkAdapter 转化字符串size工具函数 比如SpeedUtils
|
||
* getString 解决 字符串hardcode问题
|
||
* equals 写法,常量.equals(xxx val)
|
||
* Adapter 里面clicklistener 用接口传参将点击操作委托给controller
|
||
* Adapter ViewHolder的功能,部分重写到ViewHolder类本身
|
||
|
||
* activity 统一入口未完成(外部入口相关)
|