我一直在考虑将 Buck 用于一个大型项目,但我想知道是否有与 gradle 的构建变体和产品风格相当的有用的东西。
问问题
677 次
1 回答
3
对于调试与发布版本(即,中BuildConfig.java
的常量),有android_build_config()
: http: //facebook.github.io/buck/rule/android_build_config.html。如果你好奇,介绍它的提交详细解释了它的android_build_config()
工作原理以及为什么它比 Gradle 有更高效的实现。具体来说,在 Buck 中,您可以同时并行构建调试和发布版本,但在 Gradle 中,您不能。
虽然目前没有记录,android_binary()
但有参数resource_filter
并将cpu_filters
生成的 APK 限制为适当的资源。resource_filter
可以是像['mdpi', 'hdpi']
while一样的列表,cpu_filters
也可以是像['arm', 'armv7', 'x86']
. 目前,对于每个排列,您必须编写一个单独的android_binary()
规则,这无疑比您在 Gradle 中定义事物的方式更加繁琐。我建议定义一个宏来生成所有android_binary()
规则以帮助消除样板。我们正在努力使用内置规则使这更容易做到,这样开发人员就不必为这些东西创建自己的宏。
于 2014-09-23T17:18:05.583 回答