简聊 Android 客户端

开发环境

配置

以上配置看自己需求按需配置,当然如果你不配置也不影响运行

fir.im 测试版

发布 fir.im 测试版可以利用 fir 的 gradle 插件来实现一键自动打包上传。需要注意的是在需要在gradle.properties 文件中加上如下2行:

BUILD_FOR_FIR=true
FIR_TOKEN= //这个是gradle中使用插件发布到fir需要使用到的token

每次上传前需要更新项目的 versionCode 和 versionName,并将更新日志则填写在项目根目录的 fir-changelog.txt 文件中。运行 ./gradlew publishApkRelease 即可完成打包上传,teambition 的简聊话题内还配置有 fir.im 的 webhook,一旦 fir.im 有新的测试版发布就会有聚合消息。

渠道包打包

渠道分包采用 packer-ng-plugin 插件来实现快速打包。打包前需要在 gradle.properties 文件中加入商店配置文件路径 market=markets.txt markets.txt 语法如下:

anzhi#注释:安智市场
appchina
baidu
baiduAd#百度市场推广渠道

打渠道包的 gradle 命令是 ./gradlew apkProdRelease。在代码中读取渠道信息使用如下接口:

final String market = PackerNg.getMarket(Context);
AnalyticsConfig.setChannel(market); // 设置友盟渠道

Jenkins 使用 Talk-Android-Release 任务来打发布包

开发调试相关设置

由于应用开启了 MultiDex,所以在 build.gradle 文件中配置了2个 productFlavor: dev 和 prod。其中 dev 的 minSdkVersion 为 21,在编译时 Android gradle plugin 会执行 pre-dexing 操作并跳过 dex 合并这一步,编译的效率相对更高。所以在开发时需要在 Android Studio 的 Build Variants 窗口选择devDebug 或 devBeta,但是只能在 5.0版本以上的机器上测试。如需在低版本上测试则需要选择 prodDebug。