HarmonyOS 鸿蒙Next 如何对API 返回的JSON 对应的数据类禁用混淆

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

HarmonyOS 鸿蒙Next 如何对API 返回的JSON 对应的数据类禁用混淆 我们一般会对 API 的响应类, 无论它是 JSON, XML, PB, 创建对应的数据类.

如果在正式版的 app 上面开启了混淆, 但是这些数据类却进行了混淆的话, 那么就会面临字段找不到的错误.

所以我想对所有的数据类禁用混淆.

所以有什么方式可以对一定文件夹下的数据类禁用混淆吗?

2 回复

禁用混淆可以使用白名单能力,也就是下面所说的保留选项

保留选项 -keep-property-name 保留属性名
-keep-global-name 保留顶层作用域和导出元素的名称
-keep-file-name 保留指定的文件/文件夹的名称
-keep-dts 读取指定.d.ts文件中的名称作为白名单
-keep-comments 保留编译生成的声明文件中class, function, namespace, enum, struct, interface, module, type及属性上方的JsDoc注释
-keep 保留指定相对路径中的所有名称(例如变量名、类名、属性名等)
通配符 名称类和路径类的保留选项支持通配符

更多关于HarmonyOS 鸿蒙Next 如何对API 返回的JSON 对应的数据类禁用混淆的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS(鸿蒙)系统中,如果你希望在混淆代码时保留API返回的JSON对应的数据类,你需要在你的混淆配置文件(通常是proguard-rules.pro)中添加相应的规则。以下是具体步骤:

  1. 定位混淆配置文件:确保你的项目中包含了一个名为proguard-rules.pro的文件。如果没有,你需要在项目的app目录下的build.gradle文件中添加对混淆文件的引用。

  2. 添加保留规则:在proguard-rules.pro文件中,针对你的数据类添加-keep规则。例如,如果你的数据类位于com.example.data包下,并且类名为UserData,你可以添加如下规则:

    -keep class com.example.data.UserData { *; }
    

    这条规则会保留UserData类及其所有成员(字段和方法)不被混淆。

  3. 同步并构建项目:保存proguard-rules.pro文件后,同步你的项目并重新构建,以确保混淆配置生效。

如果上述步骤正确执行,你的数据类应该能够在混淆过程中被保留,从而确保JSON解析能够正常工作。

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

回到顶部