android - 如何从 Gradle 在 Android Manifest 文件中注入“tools:node”的值
问题描述
我正在开发应用程序生成器,我需要自定义清单元素。
我想通过“tools:node=remove”删除清单文件中的一些元素,但“tools:node”的值来自 Gradle 文件!
我在 Gradle 文件中定义了这个值:
def hasWidget = "${Boolean.valueOf(System.env.hasWidget ?: true)}"
manifestPlaceholders = [ appWidget : "${hasWidget ? "replace" : "remove"}"]
在清单文件中我试试这个:
<receiver
android:name="..."
tools:node="${appWidget}"
android:label="....">
但它没有用!
它向我显示一个错误:单击以检查
任何想法我怎么能通过这个问题?
我感谢您的帮助
解决方案
尝试将您的 gradle-script 更新为:
def hasWidget = "${Boolean.valueOf(System.env.hasWidget ?: true)}"
manifestPlaceholders = [ appWidget : hasWidget ? "replace" : "remove" ]
推荐阅读
- c# - Xamarin 重置动画或翻译后替换视图位置X 动画结束
- git - `git clone` 如何处理目标目录中的任何现有文件和子目录?
- jenkins - 如何在jenkins中修改xml文件中的xml元素
- python - Python tkinter 覆盖默认 ctrl-h 绑定
- ios - 添加时间到日期选择器日期和时间会导致相同的日期和时间。迅速
- asp.net-mvc - DataContext 初始化给出错误
- xml - xdt 通过子节点属性进行转换
- postgresql - 在一个查询中计算具有不同条件的行
- plot - 在 Julia 中绘制圆方程
- symfony - 重置密码 symfony 4(用户未登录)