1. 开发语言
学习 Kotlin 有些时间了,也没有用它开发过项目,所以打算用 Kotlin 作为主要开发语言。
2. 主要三方依赖库
- 日志:logger
- 权限申请:XXPermissions
- 异步处理:RxJava
- 网络:Retrofit
- JSON解析:moshi
- 图片加载:coil
- H5加载:腾讯 x5 内核
- 刷新UI库:SmartRefreshLayout
3. 判断 app 编译模式
1、BuildConfig.DEBUG
和 ApplicationInfo.FLAG_DEBUGGABLE
Android 开发中一般会通过 BuildConfig.DEBUG 判断,但由于存在问题,所以有了 ApplicationInfo.FLAG_DEBUGGABLE 方案
public static boolean isDebug(@NonNull Context context, String packageName) {
if (!TextUtils.isEmpty(packageName)) {
try {
PackageManager pm = context.getPackageManager();
ApplicationInfo ai = pm.getApplicationInfo(packageName, 0);
return (ai.flags & ApplicationInfo.FLAG_DEBUGGABLE) != 0;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
}
return false;
}
受 gradle 动态替换 APP 名称和图标的启发,有了另一种思路。
2、gradle 预置字符串
// build.gradle#android
buildTypes {
release {
resValue "string", "buildType", "release"
}
debug {
resValue "string", "buildType", "debug"
}
}
然后代码里读取 buildType
和 “debug” 比较即可
context.getString(R.string.buildType) == "debug"
4. 统一依赖库版本管理
5. 使用 applicationIdSuffix
,实现同时安装正式包和测试包
6. 配置签名
7. 重命名 apk 名称
未经授权,不得转载
版权声明:本文为feiyangqwer原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。