# KLGenerateSpamCode 垃圾代码生成器
本工具用于应对苹果对重复应用的审核(Guideline 4.3 Design Spam),避免苹果机审检测概率。
## 主要功能
1. 修改工程名
1. 修改类名前缀
1. 扫描工程中的代码,生成同等数量的 Category 文件,文件中及是同等方法数量的垃圾代码。
1. 修改 xxx.xcassets 文件夹中的 png 资源文件名。
1. 删除代码中的所有注释和空行。
## 使用
### 使用源码
1. 下载源码。
1. 用 Xcode 打开工程并配置参数。如图![配置参数](https://github.com/klaus01/KLGenerateSpamCode/raw/master/images/p2.png)
1. 运行
### 使用二进制文件,在终端中执行 GenerateSpamCode
```
$ ./GenerateSpamCode \
/Users/kelei/Documents/work/git/projectName/source \
-deleteComments
```
### 参数说明
- *(必填)* **源码文件夹绝对路径**(如:`/Users/kelei/Documents/work/git/projectName/source`)
- **-modifyProjectName [原名称]>[新名称]** 修改工程名。程序会修改`原名称-Swift.h`、`Podfile`、`原名称-Bridging-Header.h`、`源码文件夹绝对路径`、`原名称.xcodeproj`和`原名称.xcworkspace`的名称和内容。*`Podfile`被修改后需要手动`pod install`*
- **-modifyClassNamePrefix [工程文件 xcodeproj 绝对路径] [原前缀]>[新前缀]** 修改源代码类名前缀。程序会扫描`源码文件夹绝对路径`下的 .h .swift 文件,修改文件名,修改使用该类名的代码,修改`工程文件`中的文件名。文件名有`原前缀`的会修改成`新前缀`,如:`原前缀ViewController`变成`新前缀ViewController`;没有`原前缀`的会增加`新前缀`,如:`ViewController`变成`新前缀ViewController`。
- **-spamCodeOut [垃圾代码文件输出目录] [垃圾代码方法增加的参数名]** 生成垃圾代码。程序会扫描`源码文件夹绝对路径`下的 .m .swift 文件中的类和方法,并生成`category`和`extension`文件,文件中的方法是在代码原方法的基础上增加`垃圾代码方法增加的参数名`参数。如:`-spamCodeOut /dir AppLog `,会将`- (void)setupKeys {}`生成为`+ (BOOL)setupKeysAppLog:(NSInteger)AppLog { return AppLog % 20 == 0; }`,会将`- (void)foo:(NSString *)str {}`生成为`+ (BOOL)fooAppLog:(NSInteger)AppLog { return AppLog % 23 == 0; }`
- **-ignoreDirNames [忽略文件夹名称字符串]** 忽略这些文件夹,对`-modifyClassNamePrefix`、`-spamCodeOut`和`-deleteComments`参数有效。目前只会忽略`源码文件夹绝对路径`下一级的这些目录。如:`/p/s -ignoreDirNames categorys`,那么`/p/s/categorys`会被忽略,但`/p/s/viewControllers/categorys`不会忽略。
- **-handleXcassets** 修改`xxx.xcassets`文件夹中的 png 资源文件名,同时也`Contents.json`文件中的关联名称,不会影响代码中使用图片。
- **-deleteComments** 删除工程目录下 .h .m .swift 文件中的注释和空行。
## 另外修改图片 hash 值的方法
使用 [ImageMagick](http://www.imagemagick.org/) 对 png 图片做轻量压缩,及不损失图片质量,又可改变图片文件 hash 值。方法:
1. 安装 ImageMagick,`brew install imagemagick`
2. 压缩工程目录下所有 png 文件,`find . -iname "*.png" -exec echo {} \; -exec convert {} {} \;`
## 使用经验
就我 2017-11 月的提交情况来看,只需要做如下修改就可以上马甲包了。
1. 修改工程名
2. 修改类名前缀
3. 修改图片文件 Hash 值
4. 修改 .xcassets 中的图片文件名
5. 用别的电脑打包
## 已知问题
- 生成的垃圾代码文件可能是 .m 文件中实现的私有类,编译垃圾代码可能会报错,删除该垃圾代码 .h .m 文件及可。
没有合适的资源?快使用搜索试试~ 我知道了~
iOS马甲包,过4.3,垃圾代码添加工具
共14个文件
plist:2个
xcworkspacedata:1个
xcuserstate:1个
需积分: 5 0 下载量 196 浏览量
2024-05-13
17:50:20
上传
评论
收藏 266KB ZIP 举报
温馨提示
打开Xcode, 点击 Product -> Scheme -> Edit Scheme 添加两行命令 (1)/Users/ios023/Desktop/xxxxx(项目的绝对路径) (2)-spamCodeOut (垃圾代码的输出路径) Ilslog(分类或扩展对应的名称) 点击运行即可将垃圾代码添加到指定目录 这里的绝对路径是扫描你文件个数以及名称,根据项目里文件个数来添加对应的乐色
资源推荐
资源详情
资源评论
收起资源包目录
AddGarbageTool.zip (14个子文件)
AddGarbageTool
.DS_Store 6KB
LICENSE 1KB
KLGenerateSpamCode.xcodeproj
xcshareddata
xcschemes
KLGenerateSpamCode.xcscheme 3KB
project.pbxproj 8KB
xcuserdata
ios023.xcuserdatad
xcschemes
xcschememanagement.plist 502B
project.xcworkspace
xcshareddata
swiftpm
configuration
IDEWorkspaceChecks.plist 238B
contents.xcworkspacedata 163B
xcuserdata
ios023.xcuserdatad
UserInterfaceState.xcuserstate 55KB
.gitignore 1KB
ReadMeEnglish 4KB
images
p2.png 210KB
README.md 4KB
KLGenerateSpamCode
main.m 53KB
GenerateSpamCode 80KB
共 14 条
- 1
资源评论
qq591957373
- 粉丝: 0
- 资源: 5
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功