去掉手机桌面SpringBoard的红色提醒babge
1. 下载theos
依赖库比较多,加上recursive自动装
git clone --recursive https://github.com/theos/theos.git
2. 编辑环境变量
vim ~/.bash_profile
THEOS的配置
export THEOS=~/theos
export PATH=$THEOS/bin:$PATH
image.png
Monkey的环境配置
vim ~/.zshrc
export MonkeyDevDeviceIP=localhostMonkeyDevDevicePort=10010
image.png
让bash_profile配置的环境变量立即生效
source ~/.bash_profile
如果用的zsh
vim ~/.zshrc
加上这个
source ~/.bash_profile
3. 从手机中拷贝出SpringBoard
通过usb拷贝,开启 端口映射
python ~/GGShell/usbmuxd-1.0.8/tcprelay.py -t 22:10010
端口映射
拷贝到文件夹内
scp -r -P 10010 root@localhost:/System/Library/CoreServices/SpringBoard.app ~/Desktop/Springboard/
image.png
查看一下是否加密,没有输出表示没加密
otool -l ~/Desktop/Springboard/SpringBoard.app/SpringBoard | grep crypt
image.png
4. cycript看层次结构
登录到手机
ssh -p 10010 root@localhost
查看一下SpringBoard进程
ps -A | grep SpringBoard
附加SpringBoard进程
cycript -p SpringBoard
image.png
递归打印rootVc的view层次
UIApp.keyWindow.rootViewController.view.recursiveDescription().toString()直接搜角标badge
image.png
#0x12de82030.hidden = 1 发现角标没了
image.png
4. class_dump导出头文件
class-dump -H ~/Desktop/Springboard/SpringBoard.app/SpringBoard -o SpHeaders
image.png
5. 新建loges项目
nic.pl,选13
image.png
选项自己填就行
image.png
把项目拖subline text里面,Tweak重写init
image.png
Makefile 里面添加这2句,xcode10移除了GCC的问题
SpringBoardHook_CFLAGS = -std=c++11 -stdlib=libc++SpringBoardHook_LDFLAGS = -stdlib=libc++
image.png
编译打包make,重新编译最好make clean一下
image.png
make package打包,提醒package名字建议小写
make package
make install打包,SpringBoard会重启
make install
6. 利用MonkeyDev新建Logos Tweak项目
上面安装的可以直接去Cydia插件里面卸载,也可以去手机/Library/MobileSubstrate/DynamicLibraries/删除SpringBoardHook.dylib和SpringBoardHook.plist
image.png
image.png
目录中没有Makefile这个文件,MonkeyDev已经为我们配置好了,上面配置过全局的环境变量,下面的值就不需要设置了
image.png
image.png
image.png
直接编译就ok了














网友评论