译Jenkins 集成 APK size 与 dexcount 趋势图

Posted Android程序员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了译Jenkins 集成 APK size 与 dexcount 趋势图相关的知识,希望对你有一定的参考价值。

原文:

译者:汤涛


最近在 android Weekly 上看到的一篇文章,感觉有些帮助,文章不长,就顺手翻译了一下,推荐给大家。大家有不错的译文,也欢迎给我投稿。Jenkins 这个持续集成工具,我们一直在用,感觉不错,用好它能帮助我们解决很多问题,极大提高团队开发效率。


因为微信限制,正文外链不可点击,大家可以点击阅读原文访问我的简书了解更多。

我们在 为持续集成投入了大量的精力。为了改善 APK size 与 dex 中的方法/字段数,首先必须测量它。当我时,有人告诉了我 ,它使用起来非常容易:

top-level build.gradle

buildscript {
   repositories {
       jcenter()
   }
   
   dependencies {
       // other dependencies go here...
       classpath 'com.getkeepsafe.dexcount:dexcount-gradle-plugin:0.5.2'
   }
}

app/build.gradle

android {
   // your android block goes here
}
apply plugin: 'com.getkeepsafe.dexcount'

现在,如果编译你的工程,这个插件将会在每次 build 时,输出 dex 方法数与字段数。



以上已经非常有帮助了 :-)

如果你不用 Jenkins 的话,可以不用继续往下看了。



接下来,让我们看看 Plot 这个 Jenkins 插件。给 Jenkins 安装 ,并为你的 build 配置它。

【译】Jenkins 集成 APK size 与 dexcount 趋势图

注意根据你的工程调整 CSV 文件路径,debug 与 release build 各有不同的文件名。如果准备就绪,在你的 build 任务里点击 Plots(注意应该先跑 1~2 次 build 任务),应该可以看到一个漂亮的图表。来看看我们现在有什么了?

【译】Jenkins 集成 APK size 与 dexcount 趋势图
现在让我们来看看 APK size,打开 Jenkins build 配置,在 build 的最后,加一小段脚本。

OUTFILE=flinc/app/build/outputs/apksize.csv
echo filesize > $OUTFILE
# yep, that's for Mac. Use "stat -c %s" instead on Linux
stat -f%z flinc/app/build/outputs/apk/app-release.apk >> $OUTFILE

同时添加新的 plot 变量:’Add Plot’ 按钮 ( 不是 ‘Add’ 按钮,这个也会被添加到同样的图表中)。注意我在 group 字段里,填写了与之前一样的 ‘APK info’。


让我们来看看最终效果吧:


超赞!

特别提示:为了更轻松地创建 plots, 你可以简单创建一个 free-style 类型的 Jenkins 任务,将指定的 .csv 文件复制到其 workspace, 并开始测试,分分钟就可以搞定。

希望这篇文章会帮助你更容易地跟踪各种优化的改进效果,包括:,,或者使用等。祝你玩得愉快!

以上是关于译Jenkins 集成 APK size 与 dexcount 趋势图的主要内容,如果未能解决你的问题,请参考以下文章

如何将托管在gerrit上的代码库集成到jenkins?

Jenkins 持续集成实现 Android 自动化打包

Jenkins 持续集成实现 Android 自动化打包

什么是 Jenkins? 运用Jenkins持续集成

如何从 Jenkins/Hudson 上传 APK 到 Play 商店?

jenkins+gradle+上传蒲公英(Android持续集成)