之前在网上看到过这样的分享,但是试了试,发现没用,可以是型号不对,或者是其它的原因吧,所以我再写一个, (iphon4,7.0.4)
先上最终效果图(左滑可见):
-
导出SpringBoard,得到.h文件这个就不详细说了。
-
手机停留在锁屏页面。
-
ssh登录手机:
MacBook-Pro:~ CY$ ssh root@x.x.x.x -
进入程序:
CY:~ root# cycript -p SpringBoard -
得到当前的试图:
CY:~ root# [UIApp keyWindow] recursiveDescription]
(这里会得到一堆的试图,具体那一个是我们需要的呢? 总结下两个字:猜,试)
-
在这里就不去一步步的试了,直接说出相关的类名:SBLockScreenNotificationListController
然后在SpringBoard的.h文件中搜索下,可以发现一堆的属性和方法,具体那些是我们需要的,总结下还是两个字:猜,试。
7.最后可以发现需要的有两个,一个变量,和一个方法
SBLockScreenNotificationListView *_notificationView;
- (void)loadView;
-
到这里就开始编写Tweak
直接上代码:
Tweak.xm :
#import “substrate.h”
%hook SBLockScreenNotificationListController
- (void)loadView
{
%orig();
UIView * _awayView = MSHookIvar(self, “_notificationView”);
UILabel *label = [UILabel alloc] initWithFrame:CGRectMake(320,110,18,320)];
label.text = @“密码…0527”;
label.numberOfLines = 0;
label.textAlignment = NSTextAlignmentCenter;
label.backgroundColor = [UIColor clearColor];
label.textColor = [UIColor whiteColor];
[_awayView addSubview:label];
}
%end -
最后安装到手机上
MacBook-Pro:~ CY$ make package install