HarmonyOS 混淆没生效

@Entry
@Component
struct Index17 {
  build() {
    Column() {
      Text('Im Entry').fontSize(30).onClick(() => {
        TsUtils.consoleObjName('Entry')
      })
    }
  }
}

class Entry {
  name: string = ''
}

export class TsUtils {
  public static consoleObjName(caller: string) {
    console.log(`====${caller} click`)
    let a = 'name'
    let o = new Entry()
    o.name = caller + 'Name'
    console.log(`====${caller} click ${o[a]}`)
    var obj = { x0: 0, x1: 0, x2: 0 };
    for (var i = 0; i <= 2; i++) {
      console.log('====' + obj['x' + i]);
    }
  }
}

开启了-enable-property-obfuscation,但是这样运行起来也没报错,是没混淆吗?

HarmonyOS
2024-12-23 16:35:01
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
put_get

参考混淆文档:

https://gitee.com/openharmony/arkcompiler_ets_frontend/blob/master/arkguard/README-cn.md#%E6%B7%B7%E6%B7%86%E8%A7%84%E5%88%99%E5%90%88%E5%B9%B6%E7%AD%96%E7%95%A5

class Entry {
  name: string = ''
} 

name属性没有混淆成功,原因name属性在系统自动生成的白名单中不会混淆。

build/default/cache/default/default@HarCompileArkTS/esmodule/release/obfuscation/systemApiCache.json

如下类部分不在白名单的可以混淆:

class Entry {
  name: string = '';
  name1: string = '';
  age: number = 1;
  gender: number = 0;
  gender1: number = 0;
}

混淆结果:

class Entry {
  constructor() {
    this.name = '';
    this.m = '';
    this.j = 1;
    this.gender = 0;
    this.o = 0;
  }
}
分享
微博
QQ
微信
回复
2024-12-23 18:35:45
相关问题
HarmonyOS 修改了APP名字和图标没生效
906浏览 • 1回复 待解决
input_enter_key_type设置没生效
7143浏览 • 1回复 待解决
HarmonyOS 代码混淆配置没有生效
982浏览 • 1回复 待解决
HarmonyOS SDK har包代码混淆生效
1035浏览 • 1回复 待解决
编译har,如何混淆混淆如何使用
1971浏览 • 1回复 待解决
HarmonyOS 混淆相关问题
951浏览 • 1回复 待解决
HarmonyOS har混淆问题
1008浏览 • 1回复 待解决
HarmonyOS 混淆加固策略
1107浏览 • 1回复 待解决
HarmonyOS har包混淆规则
1239浏览 • 1回复 待解决
HarmonyOS 关于混淆的疑问?
1342浏览 • 1回复 待解决
基于反混淆工具混淆后的日志定位
1490浏览 • 1回复 待解决
HarmonyOS 混淆相关场景咨询
1095浏览 • 1回复 待解决
HarmonyOS 混淆规则的问题
1007浏览 • 1回复 待解决
HarmonyOS 模块之间混淆规则
946浏览 • 1回复 待解决
HarmonyOS har包混淆问题
1387浏览 • 1回复 待解决
HarmonyOS 混淆规则细节疑惑
896浏览 • 1回复 待解决