文档项目配置

项目配置

预计阅读时间:5 分钟

概述

CodeFog 提供丰富的配置选项,让您可以精确控制混淆行为。 本文档将介绍所有可用的配置项及其用途。

基础配置

混淆前缀

prefix

所有混淆后的标识符都会以此前缀开头,便于识别和调试。

默认值:ZFJObj_
示例:UserManager → ZFJObj_8xK9m

随机字符长度

randomLength

混淆后标识符中随机部分的字符长度。

默认值:5
范围:3 - 10

自动备份

autoBackup

混淆前自动创建项目备份。强烈建议保持开启。

默认值:true

混淆选项

选项说明默认推荐
obfuscateClass混淆类名开启
obfuscateMethod混淆方法名开启
obfuscateProperty混淆属性名开启
encryptString字符串加密关闭可选
obfuscateResource资源文件混淆关闭可选
generateJunkCode生成垃圾代码关闭可选
filterSensitive敏感词过滤开启

配置文件

CodeFog 支持使用 JSON 配置文件保存和加载配置。配置文件通常命名为 codefog.config.json

{
  "prefix": "ZFJObj_",
  "randomLength": 5,
  "autoBackup": true,
  "obfuscation": {
    "class": true,
    "method": true,
    "property": true,
    "string": false,
    "resource": false
  },
  "whitelist": {
    "classes": ["AppDelegate", "SceneDelegate"],
    "methods": ["viewDidLoad", "didReceiveMemoryWarning"],
    "prefixes": ["UI", "NS", "CG"]
  },
  "output": {
    "mappingFile": true,
    "report": true
  }
}
导出配置:文件 → 导出配置
导入配置:文件 → 导入配置

白名单配置

白名单用于指定不需要混淆的类、方法或前缀。常见的白名单配置:

系统类前缀(自动排除)

UI*NS*CG*CA*CF*AV*MK*CL*SK*

生命周期方法(自动排除)

viewDidLoadviewWillAppearviewDidAppeardeallocinit

详细的白名单配置请参考 白名单配置 文档。

下一步

了解更多高级配置选项: