| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- //
- // YBHomeRedObj.m
- // YBVideo
- //
- // Created by ybRRR on 2023/1/13.
- // Copyright © 2023 cat. All rights reserved.
- //
- #import "YBHomeRedObj.h"
- @implementation YBHomeRedObj
- static YBHomeRedObj *_redInstance = nil;
- +(instancetype)redInstance{
- static dispatch_once_t onceToken;
- dispatch_once(&onceToken, ^{
- _redInstance = [[super allocWithZone:NULL]init];
- _redInstance.lookCount = 0;
- });
- return _redInstance;
- }
- + (instancetype)allocWithZone:(struct _NSZone *)zone{
- return [self redInstance];
- }
- -(void)initWithTimer{
- if(!_lookTimer){
- _lookTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(lookTimerStart) userInfo:nil repeats:YES];
- }
- }
- -(void)lookTimerStart{
- _lookCount ++;
- if (_lookCount >= 60) {
- _lookCount = 60;
- [self timerPause];
- [self getWatchVideoAward];
- }else{
- CGFloat timeS = (CGFloat)1/60;
- _startFloattime +=timeS;
- // if([self.delegate respondsToSelector:@selector(homeRedReloadTime:)]){
- // [self.delegate homeRedReloadTime:_startFloattime];
- // }
- if(self.startEvent){
- self.startEvent(_startFloattime);
- }
- // progressView.progress =_startFloattime;
- }
- NSLog(@"yblookvc-------:%d",_lookCount);
- }
- -(void)timePause{
- [self timerPause];
- }
- -(void)timerPause{
- if (_lookTimer) {
- [_lookTimer setFireDate:[NSDate distantFuture]];
- }
- }
- -(void)timerBegin{
- if (_lookTimer) {
- [_lookTimer setFireDate:[NSDate date]];
- }
- }
- -(void)timerEnd{
- if (_lookTimer) {
- [_lookTimer invalidate];
- _lookTimer = nil;
- }
- }
- -(void)timeGo{
- [self timerBegin];
- }
- -(void)getWatchVideoAward{
- NSDictionary *dic = @{@"uid":[Config getOwnID],@"token":[Config getOwnToken]};
- [YBNetworking postWithUrl:@"Video.watchVideoAward" Dic:dic Suc:^(int code, id info, NSString *msg) {
- if(code == 0){
- NSDictionary *infos = [info firstObject];
- if ([minstr([infos valueForKey:@"continue_receive"]) isEqual:@"1"]) {
- _lookCount = 0;
- _startFloattime = 0.0f;
- [self timerBegin];
- }
- }else{
- [self timerEnd];
- }
- [MBProgressHUD showError:msg];
- } Fail:^(id fail) {
-
- }];
- }
- @end
|