瀏覽代碼

1.同步1.0.3的严重bug

huangxiaodong 1 年之前
父節點
當前提交
59810eb278

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

@@ -46,6 +46,7 @@
         UIWindowScene *windowScene = (UIWindowScene *)scene;
         self.window = [[UIWindow alloc] initWithWindowScene:windowScene];
         self.window.frame = CGRectMake(0, 0, [UIScreen mainScreen].bounds.size.width, [UIScreen mainScreen].bounds.size.height);
+       
         // 初始化数据库
         [self initBrowserWindow];
         // 加载主页面
@@ -90,7 +91,12 @@
     NSString *sdnId = [connectDeviceManager shareInstance].DeviceThirdIdMod.data.sdnId;
     if(SNStr && !sdnId){
         [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:YES didNetEnd:^(bool didSuc) {
-            
+            if(!didSuc){
+                if(self->_checkSNDataTimer){
+                    [self->_checkSNDataTimer invalidate];
+                }
+                self->_checkSNDataTimer = [NSTimer scheduledTimerWithTimeInterval:3 target:self selector:@selector(enterMainVCFromScene) userInfo:nil repeats:NO];
+            }
         }];
     }
 
@@ -121,19 +127,15 @@
     //确保通过SN号拿到密码了
     //非扫码进入 进入到这里很可能还没联网拿到设备最新信息
     if(![connectDeviceManager shareInstance].DeviceThirdIdMod){
-        if(!_checkSNDataTimer){
-            _checkSNDataTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 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];
-            }
-            
+        
+        BOOL haveOpenMask = [HWDataManager getBoolWithKey:Const_Mask_View_Open];
+        //添加默认启动图片
+        if(!_customLaunchV && maskModel == 0){
+            _customLaunchV = [[customLaunchView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_W, SCREEN_H)];
+            [self.window addSubview:_customLaunchV];
         }
-        return;
+            
+        //return;
     }
    
     if(_checkSNDataTimer){
@@ -150,13 +152,13 @@
         
         [[connectDeviceManager shareInstance] getThridMsgBySN:SNStr needReconnect:YES didNetEnd:^(bool 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;
     }

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

@@ -435,6 +435,11 @@ ComontAlretViewControllerDelegate>
                     
                     [weakSelf fristConnectNeedGiveAMsgFun];
                     
+                    //获取云机尺寸 兼容 720*1080 &1080*1920 不同分辨率的展示和触控
+                    NSString *getPhoneSizeStr = [RCCommandHelp getPhoneSizecommand];
+                    [weakSelf send_data:getPhoneSizeStr];
+
+                    
 //                    /*获取自己的用户名(电话号码)*/
 //                    NSString *selfUseName = nil;
 //                    NSDictionary *dict111 = [[UseAccountManage shareInstance] getLoginInfo];
@@ -1956,7 +1961,7 @@ BOOL inReconnect = NO;
     HLog(@"yyyyyyyyyyyyy 重连次数 %ld ",reConnectAccount);
     
     //20231017 修改后台3分钟再次进入 不断转圈圈问题
-    if (reConnectAccount >0 && reConnectAccount == 10 )
+    if (reConnectAccount >0 && reConnectAccount == 50 )
     {
         mainBlock(^{
             

+ 50 - 24
创维盒子/双子星云手机/connectDeviceManager/connectDeviceManager.m

@@ -37,6 +37,8 @@ WHPingDelegate
 @property (nonatomic, assign) NSInteger tcpPort;
 
 @property (nonatomic, copy) NSString *Pre_sdnId;//上一个sdn好
+
+@property (nonatomic, assign) BOOL isGetThridMsgType;
 @end
 
 @implementation connectDeviceManager
@@ -57,23 +59,32 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
 #pragma mark 根据扫码的sn获取第三方信息
 -(void)getThridMsgBySN:(NSString*)snStr needReconnect:(BOOL)needReconnect didNetEnd:(netWork_DidEndByOK)didNetEndIsOK
 {
+    
+    if(_isGetThridMsgType){
+        didNetEndIsOK(NO);
+        return;
+    }
+    
     if(needReconnect){
         _curConnectDeviceState = DeviceConnectGetThridMsging;
         
         //更换设备
-        NSString *curSdnId = self.DeviceThirdIdMod.data.sdnId;
-        if(curSdnId){
-            _Pre_sdnId = curSdnId;
-        }
+//        NSString *curSdnId = self.DeviceThirdIdMod.data.sdnId;
+//        if(curSdnId){
+//            _Pre_sdnId = curSdnId;
+//        }
         
     }
     
     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 && model.data){
@@ -83,6 +94,7 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         if(weakSelf.DeviceThirdIdMod.status == 0
            && weakSelf.DeviceThirdIdMod.data)
         {
+            //[[iToast makeText:[[NSString alloc] initWithFormat:@"sdnID:%@",model.data.sdnId]] show];
             
             NSString*desPwdstr = [RSATool AES128Decrypt:weakSelf.DeviceThirdIdMod.data.password key:AESCODEKEEYY];
             
@@ -111,12 +123,21 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         
     } failure:^(NSError * _Nonnull error) {
         HLog("网络报错");
+        self->_isGetThridMsgType = NO;
         didNetEndIsOK(NO);
     }];
 }
 
 #pragma mark 初始化瑞云的SDK等
 - (void)initRuiyunSDKFun{
+    
+    bool connected = [RaylinkProxy.sharedManager isSdnConnected];
+    if(connected){
+        [self onConnectFun];
+        return;
+    }
+
+    
     HLog(@"initRuiyunSDKFun");
     
 //    bool connected = [RaylinkProxy.sharedManager isSdnConnected];
@@ -159,6 +180,7 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
     }
     
     
+    KWeakSelf
     /// 启动定时器监听 SND 连接状态
     self.connectCheckTimer = [NSTimer scheduledTimerWithTimeInterval:0.5 repeats:YES block:^(NSTimer * _Nonnull timer) {
         
@@ -171,7 +193,9 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         self.sdnConnected = connected;
         
         if (self.sdnConnected) {
-            
+            [weakSelf onConnectFun];
+            [self->_connectCheckTimer invalidate];
+
             //self.sdnConnectStateLab.text = @"SDN state: Connected";
             //self.sdnIDLab.text = [@"My SDN ID: " stringByAppendingString:[RaylinkProxy.sharedManager getSdnId]];
             
@@ -184,34 +208,34 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
     }];
     
     
-    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
-        mainBlock(^{
-            [self onConnectFun];
-        });
-    });
+//    dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(2.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+//        mainBlock(^{
+//            [self onConnectFun];
+//        });
+//    });
 }
 
 
 - (void)onConnectFun{
     
     // 2. 监听SDN 连接状态
-    bool connected = [RaylinkProxy.sharedManager isSdnConnected];
-    
-    HLog(@"协助瑞云看日志onConnectFun isSdnConnected:%d",connected);
-    
-    if(!connected){
-        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
-            mainBlock(^{
-                [self onConnectFun];
-            });
-        });
-        
-        return;
-    }
+//    bool connected = [RaylinkProxy.sharedManager isSdnConnected];
+//
+//    HLog(@"协助瑞云看日志onConnectFun isSdnConnected:%d",connected);
+//
+//    if(!connected){
+//        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
+//            mainBlock(^{
+//                [self onConnectFun];
+//            });
+//        });
+//
+//        return;
+//    }
     
     if (self.peerConnected == YES) {
         [self disconnect];
-        return;
+        //return;
     }
     
     _curConnectDeviceState = DeviceConnectDeciceing;
@@ -290,6 +314,8 @@ static connectDeviceManager *connectDeviceManagerInstance = nil;
         [self.socket connectToHost:@"127.0.0.1" onPort:self.tcpPort error:NULL];
         
         _curConnectDeviceState = DeviceConnectDeciceOk;
+        _Pre_sdnId = self.DeviceThirdIdMod.data.sdnId;
+
 //        [self.connectBtn setTitle:@"连接成功" forState:UIControlStateDisabled];
 //        [self.sendBtn setEnabled:YES];
     } else {