目錄
聲明
本教程僅供研究學習用,請勿用於其他用途
場景
我們在划水看直播,然後想給自己喜歡的主播點贊(刷贊),但是手指一直點贊好累哦,可不可以用什麼方式來代替我們手動點贊呢。
實現步驟
1.當用戶打開直播界面,hook 獲取點贊按鈕初始化 類
2.調用點贊Call
3.無限循環調用,判斷全局變量 是否停止
hook代碼
hook獲取點贊 按鈕
%hook TBLiveBubbleIconView
- (id)initWithFrame:(struct CGRect)arg1{
%log;
id s = %orig;//s TBLiveBubbleIconView *
[xddCode sharedInstance].icoview = self;//保存點贊類
return s; //-[TBLiveBubbleIconWeexView loadView]
}
%end
開始點贊
開始點贊
[xddCode sharedInstance].isStatr = YES;
[xddExec dianz];
停止點贊
停止點贊
[xddCode sharedInstance].isStatr = NO;
點贊實現
點贊實現
+(void)dianz{
TBLiveBubbleIconView* icoview = [xddCode sharedInstance].icoview;
NSString * liveId = icoview.liveId;
NSString * topic = icoview.topic;
if(!liveId || !topic ){
NSLog(@"數據空,請進入直播再開啓");
return;
}
//開始子線程
dispatch_async(dispatch_get_global_queue(0, 0), ^{
int x = 0;
while ([xddCode sharedInstance].isStatr == YES) {
x++;
//執行一次延續0.5秒
[NSThread sleepForTimeInterval:0.1];
NSString*str = [NSString stringWithFormat:@"當前進度%d",x];
//主線程
dispatch_async(dispatch_get_main_queue(), ^{
[[xddCode sharedInstance].icoview addFavor];//淘寶點贊
[PayeeUtils showHint:str];
});
if([xddCode sharedInstance].isStatr == NO){
break;
}
}
});//end 子線程
}