Explorar el Código

1.逻辑优化

huangxiaodong hace 1 año
padre
commit
f56e2b0a65

+ 23 - 25
创维盒子/双子星云手机/AppDelegate/SceneDelegate.m

@@ -30,7 +30,6 @@
 @property(nonatomic, strong)   CalculatorViewController *calculatorVC;
 @property(nonatomic, strong)   HWWebViewController *webVC;
 @property(nonatomic, strong)   inputPWDViewController *inputVC;
-@property(nonatomic, strong)   NSTimer *checkSNDataTimer;//
 @property(nonatomic, strong)   customLaunchView *customLaunchV;//
 //@property(nonatomic, strong)   PlayerViewController *curPlayerVC;
 
@@ -110,8 +109,8 @@
     NSString *SNStr = deviceDict[@"Const_Have_Add_Device_SN"];
     NSString *sdnId = [connectDeviceManager shareInstance].DeviceThirdIdMod.data.sdnId;
     if(SNStr && !sdnId){
-        [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:YES didNetEnd:^(bool didSuc) {
-            if(!didSuc){
+        [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:YES didNetEnd:^(NSInteger didSuc) {
+            if(didSuc == 0){
                 dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
                     mainBlock(^{
                         [weakSelf showNetErrorAlertFun];
@@ -147,23 +146,26 @@
     //确保通过SN号拿到密码了
     //非扫码进入 进入到这里很可能还没联网拿到设备最新信息
     if(![connectDeviceManager shareInstance].DeviceThirdIdMod){
-        if(!_checkSNDataTimer){
-            _checkSNDataTimer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(enterMainVCFromScene) userInfo:nil repeats:YES];
-            
-            //BOOL haveOpenMask = [HWDataManager getBoolWithKey:Const_Mask_View_Open];
-            NSInteger maskModel =  [HWDataManager getIntegerWithKey:Const_Mask_View_Model];
-            //添加默认启动图片
-            if(!_customLaunchV && maskModel == 0){
-                _customLaunchV = [[customLaunchView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, SCREEN_H)];
-                [self.window addSubview:_customLaunchV];
-            }
-            
+     
+        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(3.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+            mainBlock(^{
+                [self enterMainVCFromScene];
+            });
+        });
+        
+        //BOOL haveOpenMask = [HWDataManager getBoolWithKey:Const_Mask_View_Open];
+        NSInteger maskModel =  [HWDataManager getIntegerWithKey:Const_Mask_View_Model];
+        //添加默认启动图片
+        if(!_customLaunchV && maskModel == 0){
+            _customLaunchV = [[customLaunchView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, SCREEN_H)];
+            [self.window addSubview:_customLaunchV];
         }
+            
+        
         return;
     }
    
-    if(_checkSNDataTimer){
-        [_checkSNDataTimer invalidate];
+    if(_customLaunchV){
         [_customLaunchV removeFromSuperview];
         _customLaunchV = nil;
     }
@@ -174,15 +176,11 @@
     if(!sdnId){
         HLog(@"没有拿到sdnId");
         
-        [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:YES didNetEnd:^(bool didSuc) {
-            if(didSuc){
-                dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
-                    mainBlock(^{
-                        [self enterMainVCFromScene];
-                    });
-                });
-            }
-        }];
+        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+            mainBlock(^{
+                [self enterMainVCFromScene];
+            });
+        });
         
         return;
     }

+ 2 - 2
创维盒子/双子星云手机/Class/Guide/GuideViewController.m

@@ -40,7 +40,7 @@
     
     
     if([[connectDeviceManager shareInstance] curConnectDeviceState] == DeviceConnectUnknown){
-        [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:YES didNetEnd:^(bool didSuc) {
+        [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:YES didNetEnd:^(NSInteger didSuc) {
             
         }];
     }
@@ -68,7 +68,7 @@
             HLog(@"没有拿到设备信息");
             
             KWeakSelf
-            [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:YES didNetEnd:^(bool didSuc) {
+            [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:YES didNetEnd:^(NSInteger didSuc) {
                 if(didSuc){
                     
                 }

+ 1 - 1
创维盒子/双子星云手机/Class/Guide/QRCodeScanViewController.m

@@ -298,7 +298,7 @@ bool isDownType = YES;
 - (void)nextStep:(NSString *)sn{
     
     KWeakSelf
-    [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:NO didNetEnd:^(bool didSuc) {
+    [[connectDeviceManager shareInstance] getThridMsgBySN:sn needReconnect:NO didNetEnd:^(NSInteger didSuc) {
         if(didSuc){
             [weakSelf gotoGuideViewFunBy:sn];
         }else{

+ 2 - 2
创维盒子/双子星云手机/Class/Guide/SetPWDSecondViewController.m

@@ -251,7 +251,7 @@
                 NSString *SNStr = deviceDict[@"Const_Have_Add_Device_SN"];
                 if(SNStr){
                     KWeakSelf
-                    [[connectDeviceManager shareInstance] updateCardInfoBySN:SNStr withPwdStr:pwd didNetEnd:^(bool didSuc) {
+                    [[connectDeviceManager shareInstance] updateCardInfoBySN:SNStr withPwdStr:pwd didNetEnd:^(NSInteger didSuc) {
                         
                         if(didSuc){
                             [weakSelf getPwdFunBy:SNStr];
@@ -306,7 +306,7 @@
 -(void)getPwdFunBy:(NSString*)SNStr
 {
     KWeakSelf
-    [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:NO  didNetEnd:^(bool didSuc) {
+    [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:NO  didNetEnd:^(NSInteger didSuc) {
         
         if(didSuc){
             if(self->_isForgetPwdType){

+ 1 - 1
创维盒子/双子星云手机/Class/Set/ChangeDevice/QRCodeScanForChangeDeviceViewController.m

@@ -306,7 +306,7 @@ bool isDownType22 = YES;
 
         
         [self showNewIndicatorHaveStrWithCanBack:NO canTouch:NO showText:NSLocalizedString(@"guide_qrcoede_tips_ok",nil)];
-        [[connectDeviceManager shareInstance] getThridMsgBySN:resStr needReconnect:YES didNetEnd:^(bool didSuc) {
+        [[connectDeviceManager shareInstance] getThridMsgBySN:resStr needReconnect:YES didNetEnd:^(NSInteger didSuc) {
             
             [self removeNewIndicatorHaveStr];
             

+ 1 - 1
创维盒子/双子星云手机/Class/Set/ModifyPWD/ModifyPWDSecondViewController.m

@@ -267,7 +267,7 @@
                 if(SNStr){
                     KWeakSelf
                     [self showNewIndicatorWithCanBack:YES canTouch:NO];
-                    [[connectDeviceManager shareInstance] updateCardInfoBySN:SNStr withPwdStr:pwd didNetEnd:^(bool didSuc) {
+                    [[connectDeviceManager shareInstance] updateCardInfoBySN:SNStr withPwdStr:pwd didNetEnd:^(NSInteger didSuc) {
                         
                         [weakSelf removeNewIndicator];
                         

+ 1 - 1
创维盒子/双子星云手机/Class/Set/MySetViewController.m

@@ -515,7 +515,7 @@
     //瑞云发起重连
     NSString *snStr = [connectDeviceManager shareInstance].DeviceThirdIdMod.data.sn;
     if(snStr){
-        [[connectDeviceManager shareInstance] getThridMsgBySN:snStr needReconnect:YES didNetEnd:^(bool didSuc) {
+        [[connectDeviceManager shareInstance] getThridMsgBySN:snStr needReconnect:YES didNetEnd:^(NSInteger didSuc) {
             if(didSuc){
                 if(self->_needToResetAndOk){
                     self->_needToResetAndOk();

+ 1 - 1
创维盒子/双子星云手机/CloudPlayer/PlayerViewController.mm

@@ -2122,7 +2122,7 @@ NSDate *lastVideoTome;/*上一帧数据时间*/
         NSString *snStr = [connectDeviceManager shareInstance].DeviceThirdIdMod.data.sn;
         if(snStr){
             _checkThridConnectNum = 1;
-            [[connectDeviceManager shareInstance] getThridMsgBySN:snStr needReconnect:YES didNetEnd:^(bool didSuc) {
+            [[connectDeviceManager shareInstance] getThridMsgBySN:snStr needReconnect:YES didNetEnd:^(NSInteger didSuc) {
             }];
         }
         return;

+ 1 - 1
创维盒子/双子星云手机/connectDeviceManager/connectDeviceManager.h

@@ -21,7 +21,7 @@ typedef enum{
 /**
  *  
  */
-typedef void (^netWork_DidEndByOK) (bool didSuc);
+typedef void (^netWork_DidEndByOK) (NSInteger didSuc); // 0 fail 1 suc -1 处理
 
 @interface connectDeviceManager : NSObject
 +(connectDeviceManager *)shareInstance;

+ 10 - 3
创维盒子/双子星云手机/connectDeviceManager/connectDeviceManager.m

@@ -37,6 +37,7 @@ WHPingDelegate
 @property (nonatomic, assign) NSInteger tcpPort;
 
 @property (nonatomic, copy) NSString *Pre_sdnId;//上一个sdn好
+@property (nonatomic, assign) BOOL isGetThridMsgType;
 @end
 
 @implementation connectDeviceManager
@@ -57,6 +58,11 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
 #pragma mark 根据扫码的sn获取第三方信息
 -(void)getThridMsgBySN:(NSString*)snStr needReconnect:(BOOL)needReconnect didNetEnd:(netWork_DidEndByOK)didNetEndIsOK
 {
+    if(_isGetThridMsgType){
+        didNetEndIsOK(-1);
+        return;
+    }
+    
     if(needReconnect){
         _curConnectDeviceState = DeviceConnectGetThridMsging;
 
@@ -70,10 +76,10 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
     
     NSMutableDictionary *paraDict = [NSMutableDictionary new];
     [paraDict setValue:snStr forKey:@"sn"];
-    
+    _isGetThridMsgType = YES;
     KWeakSelf
     [[netWorkManager shareInstance] CommonGetWithCallBackCode:getThirdIdBySn Parameters:paraDict success:^(id  _Nonnull responseObject) {
-        
+        self->_isGetThridMsgType = NO;
         DeviceThirdIdModel *model = [[DeviceThirdIdModel alloc] initWithDictionary:responseObject error:nil];
 
         if(model.status == 0
@@ -116,6 +122,7 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         
     } failure:^(NSError * _Nonnull error) {
         HLog("网络报错");
+        self->_isGetThridMsgType = NO;
         didNetEndIsOK(NO);
     }];
 }
@@ -130,7 +137,7 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         NSString *SNStr = deviceDict[@"Const_Have_Add_Device_SN"];
         
         if(SNStr){
-            [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:NO  didNetEnd:^(bool didSuc) {
+            [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:NO  didNetEnd:^(NSInteger didSuc) {
                 
             }];
         }