HarmonyOS 鸿蒙Next debug模式下开发的代码,在release模式下被混淆,导致接口入参也被混淆
HarmonyOS 鸿蒙Next debug模式下开发的代码,在release模式下被混淆,导致接口入参也被混淆 我的场景是列表组件,组件初始化时定义了列表接口的入参对象,但是在开启混淆后,其中某个属性被混淆,导致传给接口的入参也出了问题,不知道有没有大佬遇到过类似的情况,前后对比如下图:
混淆前的:
更多关于HarmonyOS 鸿蒙Next debug模式下开发的代码,在release模式下被混淆,导致接口入参也被混淆的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
混淆只有在release模式下生效,解决所描述问题有两种方法:
1、-keep-property-name [,identifiers,…] 用于指定想保留的属性名,支持使用名称类通配符。
该选项在开启-enable-property-obfuscation时生效
属性白名单作用于全局。即代码中出现多个重名属性,只要与-keep-property-name配置白名单名称相同,均不会被混淆。
你可以使用-keep-property-name 属性A
2、关闭混淆,路径每个模块下的build-profile.json5文件里,enable修改为false
更多关于HarmonyOS 鸿蒙Next debug模式下开发的代码,在release模式下被混淆,导致接口入参也被混淆的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
在HarmonyOS鸿蒙系统中,如果你在Next debug模式下开发的代码,在release模式下被混淆,导致接口入参也被混淆,这通常是由于混淆配置不当引起的。
鸿蒙系统支持代码混淆,这是一种保护代码免受逆向工程攻击的技术。但在发布产品时,需要确保混淆配置不会影响到程序的正常运行,特别是接口部分。
要解决接口入参被混淆的问题,你可以检查以下几个方面:
-
混淆配置文件:检查你的混淆配置文件(通常是proguard规则文件),确保接口名称、方法名称以及重要的类名没有被列入混淆列表。你可以使用
-keep
指令来保留这些名称。 -
接口定义:确保接口的定义清晰,并且接口中的所有方法都明确标记了不被混淆。
-
构建配置:检查你的构建配置,确保在release模式下正确地应用了混淆配置文件。
-
测试:在release模式下进行充分的测试,确保所有接口都能正常工作,入参和返回值都没有被错误地混淆。
如果经过上述检查后问题依旧存在,那么可能是混淆工具或构建系统本身的bug。此时,你可以考虑联系鸿蒙系统的官方支持,或者访问官网客服获取帮助。官网地址是: