Android的Gradle技巧 3.5合并跨Java语言的Java源代码

32 篇文章 0 订阅
3.5合并跨Java语言的Java源代码
问题
您希望将Android活动或其他Java类添加到单个产品风格。

创建正确的源文件夹,添加Java类,并将它们与主源集合合并。
讨论
虽然flavor和构建类型中的字符串和布局资源会覆盖主源集中的对应值,但Java类是不同的。如果你的代码在主源集合中引用一个特定的类,那么每个flavor和构建类型都可以有自己的实现类,只要你没有一个在main。
这听起来比它更复杂。在Recipe3.2和Recipe 3.4中讨论的“Hello,World”应用程序有两种代表客户端的口味。现在考虑一个修改版本的应用程序,添加一个按钮到主要活动来调用帮助。附加按钮具有标签“Call for Help!”。
主动(发射)的活动为友好,方便的风格如图3-14所示。


图3-14。 “wayne”客户的主要活动
“stark”页面是相同的,只是有一个不同的标题,如图3-15所示。


图3-15。 “stark”客户的主要活动
单击“Call for Help!”按钮创建一个启动CallForHelpActivity的Intent。此活动及其相关布局已从主源树中删除,并将一个副本添加到stark和wayne源集。使用友好的,方式,调试变型时的总体项目布局如图3-16所示。

图3-16。main,stark和wayne风格的源文件夹

该图显示,wayne风格中的Java源代码当前在类路径中,而stark树中的Java源代码不是。两个flavor都包含CallForHelpActivity,但是每个的实现完全不同。
对于wayne风格,帮助屏幕仅包含一个包含TextView的片段,如图3-17所示。


图3-17。帮助活动的风格
stark flavor的帮助页面包含一个包含多个条目的ListFragment,如图3-18所示。


图3-18。帮助活动的风格
主源集合中的元素引用的任何类必须存在于每个flavor中。之后,实现是完全独立的。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值