All Downloads are FREE. Search and download functionalities are using the official Maven repository.

main.com.xml.guard.entensions.GuardExtension.kt Maven / Gradle / Ivy

package com.xml.guard.entensions

/**
 * User: ljx
 * Date: 2022/3/2
 * Time: 12:46
 */
open class GuardExtension {

    /**
     * 是否查找约束布局的 constraint_referenced_ids 属性的值,并添加到 AndResGuard 的白名单中,
     * 是的话,要求你在 AndroidGuard 前依赖 AabResGuard 插件,默认 false
     */
    var findAndConstraintReferencedIds = false

    /**
     * 是否查找约束布局的 constraint_referenced_ids 属性的值,并添加到 AabResGuard 的白名单中,
     * 是的话,要求你在 AndroidGuard 前依赖 AabResGuard 插件,默认 false
     */
    var findAabConstraintReferencedIds = false

    /**
     * packageChange 是一个更改 manifest 文件里 package(namespace) 属性的任务,
     * 也就是更改 app 包名的任务(不会更改 applicationId ) ,
     * 改完后,会将更改结果,同步到其他文件中(不会更改项目结构)
     */
    var packageChange = HashMap()

    /**
     * 一个移动目录的任务,它支持同时移动任意个目录,
     * 它会将原目录下的所有文件(包括子目录)移动到另外一个文件夹下,并将移动的结果,同步到其他文件中
     */
    var moveDir = HashMap()

    /**
     * 资源白名单,防止资源被混淆;配合 resGuard 任务使用
     */
    var resWhiteList = mutableListOf()

    /**
     * 类文件白名单,防止类文件名称和包名被混淆;配合 xmlClassGuard 任务使用
     */
    var classWhiteList = mutableListOf()

    /**
     * 混淆字典字符;配合 dictionary 任务使用
     */
    var dictionaryChars = mutableListOf()

    /**
     * 自定义混淆字符(key:索要混淆的字符;value:是否仅小写);配合 customStringChange 任务使用
     * 仅混淆文件中的字符,不混淆文件名称以及包名
     */
    var customStringMap = HashMap()

    /**
     * 声明字符白名单,防止字符名称被混淆;配合 declarationChange 任务使用
     */
    var declarationWhiteList = mutableListOf()

    /**
     * 字符串加解密白名单,防止字符被混淆;配合 stringFog 任务使用
     */
    var stringFogWhiteList = mutableListOf()
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy