zoukankan      html  css  js  c++  java
  • IOS中打开应用实现检查更新的功能


    //检查更新页面

    - (void)Renew{
        
        NSDictionary *infoDic = [[NSBundle mainBundle]infoDictionary];
        
        NSString *version = [infoDic valueForKey:@"CFBundleShortVersionString"];
        
        NSString *ipstr = [NSObject  deviceIPAdress];
        
        NSString *paramIp = ipstr;
        
        NSTimeInterval time = [[NSDate  date]timeIntervalSince1970];
        
        long i = time;
        
        NSString *paramTime = [NSString stringWithFormat:@"%ld",i];
        
        NSString *signstr = [NSString  stringWithFormat:@"%@%@%@%@",paramTime,paramIp,@"phone_ios",@"d556bd3337cd909b49eb5e33f46ad65c"];
        
        NSString *md5str =  [signstr MD5Hash];
        
        NSString *mdstr = [md5str   lowercaseString];
        
        NSString *sign = mdstr;
        
        NSString *key = @"phone_ios";
        
        NSDictionary *param = @{
                                @"type" : @2,
                                
                                @"version" : version
                                
                                };
        
        NSDictionary *dict = @{
                               
                               @"paramTime" : paramTime,
                               
                               @"paramIp" : paramIp,
                               
                               @"sign":sign,
                               
                               @"key" : key,
                               
                               @"param":param
                               
                               };
        
        AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
        
        manager.requestSerializer = [AFJSONRequestSerializer serializer];
        
        manager.responseSerializer =  [AFJSONResponseSerializer  serializer];
        
        manager.responseSerializer.acceptableContentTypes = [NSSet setWithObject:@"application/json"];
        
        [manager POST:RenewUrl parameters:dict success:^(AFHTTPRequestOperation *operation, id responseObject) {
            
            NSDictionary *resultDic = responseObject[@"result"];
            
            _upgradeUrl = resultDic[@"upgradeUrl"];
            
              _force = resultDic[@"isForce"];
            NSLog(@"_force--------%@",_force);
         
            NSLog(@"%@",resultDic);
            
            if ([resultDic[@"isForce"]compare:@0] !=NSOrderedSame) {
                
            UIAlertView *isForceView = [[UIAlertView alloc]initWithTitle:@"特别提示" message:@"发现新版本" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"下载", nil];
                
                
                [isForceView show];
                
            }else if ([resultDic[@"version"]compare:version] != NSOrderedSame) {
                
                UIAlertView *resultView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"发现新版本" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"下载", nil];
                
                [resultView show];
                
            }else{
                
                return ;
            }
            
        } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
            
            UIAlertView *errorView = [[UIAlertView alloc]initWithTitle:@"提示" message:@"网络有问题" delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"确定", nil];
            
            [errorView show];
            
            NSLog(@"%@",error);
        }];
    }

    - (void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex{
        
        if ([_force compare:@1 ]!=NSOrderedSame) {
            
            if (buttonIndex==1) {
                
                [self  startDownLoad];
                
    //            [[UIApplication  sharedApplication]openURL:[NSURL URLWithString:_upgradeUrl]];
            }
            
            }else if ([_force  compare:@0] !=NSOrderedSame){
            
            if ( buttonIndex == 1) {
                
    //            [[UIApplication  sharedApplication]openURL:[NSURL URLWithString:_upgradeUrl]];
                
                [self  startDownLoad];
                
            }else if (buttonIndex == 0){
                
                exit(0);
                
            }
        }
        
    }

    - (void) startDownLoad{

        NSURL *url = [NSURL URLWithString:_upgradeUrl];
        
    //    NSLog(@"url-------%@",url);
        
        NSURLRequest *request = [NSURLRequest  requestWithURL:url];
        
        NSURLConnection *connect = [NSURLConnection  connectionWithRequest:request delegate:self];
        
        [connect  start];
    }

  • 相关阅读:
    Qt 定时器事件startTimer
    认识网络、几种常用的网络拓扑图
    拓扑结构图,什么是拓扑结构
    Qt 利用QTime类来控制时间,QTime的成员函数的用法
    Qt QTime类的使用
    Qt 打开文件的默认路径 QFileDialog::getOpenFileName()
    Qt QWidget颜色设置的三种方法
    Qt 多个QDockWidget 切换显示
    Qt QString 格式化 arg 前面自动补0
    Qt 使用QMediaPlayer报错 defaultServiceProvider::requestService(): no service found for
  • 原文地址:https://www.cnblogs.com/er-dai-ma-nong/p/4876047.html
Copyright © 2011-2022 走看看