android – 如何在文件打包时用Gradle删除原始XML文件中的注释

android – 如何在文件打包时用Gradle删除原始XML文件中的注释,第1张

概述我的项目在我的 Android项目的原始资源目录中有XML文件: 当我打包在.apk文件中时,我想从这些文件中删除评论(<! - ... - >): 原始文件样本: <?xml version="1.0" encoding="utf-8"?> <celebrations xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 我的项目在我的 Android项目的原始资源目录中有XML文件:

当我打包在.apk文件中时,我想从这些文件中删除评论(<! - ... - >):

原始文件样本:

<?xml version="1.0" enCoding="utf-8"?>    <celebrations xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"              xsi:nonamespaceSchemaLocation="celebrations_schema.xsd">    <!-- This is a very important comment useful during development -->    <celebration name="celebration 1" type="oneTime" ... />    <!-- This is another very important comment useful during development -->    <celebration name="celebration 2" type="reccurent" ... /></celebrations>

预期过滤文件:

<?xml version="1.0" enCoding="utf-8"?><celebrations xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"              xsi:nonamespaceSchemaLocation="celebrations_schema.xsd">    <celebration name="celebration 1" type="oneTime" ... />    <celebration name="celebration 2" type="reccurent" ... /></celebrations>

我找到了一些有趣的类似解决方案here,但我无法管理它的工作.在我的应用程序build.gradle中添加这些行

processResources {    filesMatching('**/myxmlfiletobestrippedfromcomments.xml') {        filter {            String line -> line.replaceAll('<!--.*-->','')        }    }}

会产生以下错误:

Error:(86,0) Gradle DSL method not found: 'processResources()'

对于从java代码打开和解析XML文件,我使用以下方法:

inputStream deFinition = context.getResources().openRawResource(resID);...try {    XmlPullParser parser = Xml.newPullParser();    parser.setFeature(XmlPullParser.FEATURE_PROCESS_nameSPACES,false);    parser.setinput(deFinition,null);    parser.nextTag();    return parseCelebrations(parser);} finally {    deFinition.close();}
解决方法 默认的xml的评论将不会打包成apk,你可以反编译来测试它. 总结

以上是内存溢出为你收集整理的android – 如何在文件打包时用Gradle删除原始XML文件中的注释全部内容,希望文章能够帮你解决android – 如何在文件打包时用Gradle删除原始XML文件中的注释所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1132795.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存