【HarmonyOS NEXT】release 包开启混淆配置模板

771 阅读1分钟

配置混淆教程

不需要权限的更详细的教程:gitee.com/openharmony…

需要权限的更详细教程: developer.huawei.com/consumer/cn…

项目开启混淆配置开关

build-profile.json5

"buildOptionSet": [
  {
    "name": "release",
    "arkOptions": {
      "obfuscation": {
        "ruleOptions": {
          "enable": true,
          "files": [
            "./obfuscation-rules.txt"
          ]
        }
      }
    }
  },
],

配置混淆规则

obfuscation-rules.txt

# 配置混淆教程 https://gitee.com/openharmony/arkcompiler_ets_frontend/blob/master/arkguard/README-cn.md#arkguard

# 开启属性混淆。 如果你使用这个选项,那么所有的属性名都会被混淆,被import/export直接导入或导出的类或对象的属性名不会被混淆
-enable-property-obfuscation

# 开启顶层作用域名称混淆
-enable-toplevel-obfuscation

# 开启文件/文件夹名称混淆
-enable-filename-obfuscation

# 去除不必要的空格符和所有的换行符
-compact

# 删除对 console.* 语句的调用,要求console.*语句返回值未被调用。
-remove-log

# 删除文件中的所有注释,包括单行、多行,及JsDoc注释
-remove-comments

# 将名称缓存保存到指定的文件路径。名称缓存包含名称混淆前后的映射。
-print-namecache obfuscation-namecache.json


# 保留指定路径中的所有名称(例如变量名、类名、属性名等)不被混淆。这个路径可以是文件与文件夹,若是文件夹,则文件夹下的文件及子文件夹中文件都不混淆。  
路径仅支持相对路径,`./``../`为相对于混淆配置文件所在目录。
-keep
../../features/bean/src/main/ets/