HarmonyOS 鸿蒙Next 开启混淆后,如何批量处理,@Monitor中的字段不混淆

发布于 1周前 作者 ionicwang 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 开启混淆后,如何批量处理,@Monitor中的字段不混淆

按照推荐开启了如下四种混淆
# 混淆属性名称
-enable-property-obfuscation

混淆顶层作用域的名称

-enable-toplevel-obfuscation

混淆文件名称

-enable-filename-obfuscation

混淆导出名称

-enable-export-obfuscation

发现@Monitor中的字符属性会被混淆,导致无法接收到监听,如果要全部一个一个keep,比较麻烦,是否有好的做法推荐?
cke_3431.png


更多关于HarmonyOS 鸿蒙Next 开启混淆后,如何批量处理,@Monitor中的字段不混淆的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

1 回复

更多关于HarmonyOS 鸿蒙Next 开启混淆后,如何批量处理,@Monitor中的字段不混淆的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next系统中,若要在开启混淆后批量处理@Monitor中的字段以避免混淆,可以通过以下步骤实现:

  1. 配置ProGuard规则:在项目的proguard-rules.pro文件中,添加规则以保留@Monitor注解及其相关字段。使用-keep指令来指定需要保留的类、方法和字段。例如:
-keep @interface com.example.Monitor
-keep class * {
    @com.example.Monitor <fields>;
}

确保com.example.Monitor替换为实际的包名和注解类名。

  1. 批量处理:如果@Monitor注解使用广泛,可以编写脚本(如Python或Shell脚本)来自动生成这些ProGuard规则。脚本可以遍历项目中所有包含@Monitor注解的Java文件,提取相关字段,并生成相应的ProGuard规则。

  2. 应用规则:确保生成的ProGuard规则文件被正确引用在构建配置中。通常,这需要在build.gradlebuild.json文件中指定。

  3. 重新构建项目:应用ProGuard规则后,重新构建项目以确保混淆处理遵循新规则。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部