Android开发中渠道包过多时gradle过滤处理


有些公司App需要大力推广,所以会要求打大量的渠道包,这样gradle文件里面会产生一堆配置,如果不进行处理每次打开项目会非常慢,AS会花大量的时间去处理这些渠道包,为了避免这个问题,只需要在variantFilter进行一些过滤配置就行了,大致如下

  1. variantFilter { variant ->
  2. def names = variant.flavors*.name
  3. def buildTypeName = variant.buildType.name
  4. // 过滤分组或者渠道信息
  5. Boolean is_target_vendor = names[0].contains('vendor')
  6. Boolean is_target_channel = names[1].contains('channel')
  7. // 过滤打包类型 release还是debug
  8. Boolean is_target_type = buildTypeName.equals('debug') || buildTypeName.equals('release')
  9. if (is_target_vendor && is_target_channel && is_target_type) {
  10. variant.setIgnore(false)
  11. logger.warn('package flavor:' + names)
  12. }
  13. else {
  14. // 其他包直接忽略
  15. variant.setIgnore(true)
  16. }
  17. }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.11000011.com/?id=10

« 上一篇 下一篇 »

我要评论

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

主机推荐

  • 搬瓦工