文档敏感词过滤

敏感词过滤

预计阅读时间:10 分钟

什么是敏感词过滤?

敏感词过滤功能可以检测并替换代码中可能导致 App Store 审核被拒的敏感词汇, 如私有 API 调用、竞品名称、违规内容等。

检测范围

代码层面

  • 类名和方法名
  • 字符串常量
  • 注释内容
  • 变量名

资源层面

  • 图片文件名
  • 配置文件内容
  • 本地化字符串
  • plist 文件

敏感词类型

私有 API

调用未公开的系统 API,如 _private、UIStatusBar 等

竞品名称

代码中包含其他应用或公司名称

违规关键词

可能触发审核的敏感词汇

调试代码

测试代码、调试日志、TODO 注释等

配置选项

{
  "sensitiveFilter": {
    "enabled": true,
    "detectPrivateAPI": true,
    "detectCompetitor": true,
    "detectDebugCode": true,
    "customWords": [
      "testAccount",
      "debugMode",
      "内部测试"
    ],
    "whitelist": [
      "UIKit",
      "Foundation"
    ],
    "action": "replace"  // replace | warn | remove
  }
}

处理方式

替换模式 (replace)

自动将敏感词替换为混淆后的名称

privateMethodzfj_8xK9m

警告模式 (warn)

检测到敏感词时仅提示警告,不自动处理

删除模式 (remove)

删除包含敏感词的注释和调试代码

检测报告

混淆完成后,CodeFog 会生成敏感词检测报告:

敏感词检测报告
================
检测时间: 2025-01-03 10:30:00
项目: MyApp

发现敏感词: 5 个
- [私有API] _statusBarHeight (AppDelegate.m:45)
- [竞品名称] wechatSDK (ShareManager.m:23)
- [调试代码] NSLog(@"debug: (PaymentService.m:89)
- [自定义] testAccount (LoginVC.m:12)
- [自定义] debugMode (Config.h:8)

已处理: 5 个
处理方式: 替换

注意事项

  • 敏感词过滤不能保证 100% 通过审核
  • 建议在提交前手动检查报告
  • 第三方 SDK 中的敏感词需要联系 SDK 提供方
  • 定期更新敏感词库以应对新的审核规则