美文网首页
Gradle特殊用法

Gradle特殊用法

作者: 走在成长的道路上 | 来源:发表于2017-07-20 23:15 被阅读0次

自动调整 *.iml 中 orderEntry 顺序

apply plugin: 'com.android.application'
android {
    ........
    preBuild {
        doLast {
            def imlFile = file(project.name + ".iml")
            println 'Change ' + project.name + '.iml order'
            try {
                def parsedXml = (new XmlParser()).parse(imlFile)
                def jdkNode = parsedXml.component[1].orderEntry.find { it.'@type' == 'jdk' }
                parsedXml.component[1].remove(jdkNode)
                def sdkString = "Android API " + android.compileSdkVersion.substring("android-".length()) + " Platform"
                new Node(parsedXml.component[1], 'orderEntry', ['type': 'jdk', 'jdkName': sdkString, 'jdkType': 'Android SDK'])
                groovy.xml.XmlUtil.serialize(parsedXml, new FileOutputStream(imlFile))
            } catch (FileNotFoundException e) {
                // nop, iml not found
            }
        }
    }
    ........
}

如上所示,通过对 *.iml 文件进行 xml 解析,然后删除 代表Android SDK 的 jdk 默认节点,并在最后追加 Android SDK 节点。

相关文章

  • Gradle特殊用法

    自动调整 *.iml 中 orderEntry 顺序 如上所示,通过对 *.iml 文件进行 xml 解析,然后删...

  • 2018-04-20

    gradle/ant 输出日志到文件 使用标签:ant gradle 详细用法见官方文档

  • gradle相关技术文章

    Android 必备而又容易忽视的知识 Gradle的高级用法Gradle多渠道打包(动态设定App名称,应用图标...

  • Gradle 基础用法

    命令行 执行任务 可以通过命令行执行一个或多个任务 任务依赖 下面定义四个任务,dist和test依赖于comil...

  • gradle lombok插件的几种用法

    用法一:无插件用法 build.gradle中配置: 用法二:插件方式 新版本插件dsl写法 或者 旧版本写法 饮...

  • Android TV中实现RecyView循环功能

    RecycleView 用法 : 1.[endif]在Gradle中添加 implementation 'com....

  • RecyclerView

    RecyclerView用法 gradle xml Activity adapter 多Item布局实现(Mult...

  • Gradle的骚操作:资源文件分包及思路拓展

    其他用法:Gradle的基本操作:配置同一应用不同的ApplicationID,不同资源的名字、图标 Gradle...

  • 关于Glide v4 使用

    集成 配置 app gradle中: 混淆 用法 基本用法 自定义方法 v4特性 v4中Glide.with()....

  • Data binding

    记录android data binding的用法: 1, build.gradle里加入: dataBindin...

网友评论

      本文标题:Gradle特殊用法

      本文链接:https://www.haomeiwen.com/subject/sgfskxtx.html