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);
    }];
}

时间: 2024-11-05 14:48:26

IOS中打开应用实现检查更新的功能的相关文章

页面只能在微信中打开,并禁用分享功能

/* begin禁用微信分享功能 */ function onBridgeReady() { WeixinJSBridge.call('hideOptionMenu'); } if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); } else i

iOS中打开网络交互的方式

<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>

iOS开发中打开本地应用、打开appStore应用、给app评分功能实现

app开发中,通常会有邀请用户给app打分的功能.而在iOS中,正式应用都是通过appStore 下载的,因此给app 打分也只能在 appStore中.因此,需要从应用跳转到appStore.方法是打开响应的url 即可.代码如下: NSString *appid = @"1234567"; NSString *str = [NSString stringWithFormat:@"itms-apps://itunes.apple.com/cn/app/id%@?mt=8&q

iOS中打电话、打开网址、发邮件、发短信等

常用小功能 小功能简介 iOS中的很多小功能都是非常简单的,几行代码就搞定了,比如打电话.打开网址.发邮件.发短信等 打电话-方法1 最简单最直接的方式:直接跳到拨号界面 NSURL *url = [NSURL URLWithString:@"tel://10010"]; [[UIApplication sharedApplication] openURL:url]; 缺点 电话打完后,不会自动回到原应用,直接停留在通话记录界面 打电话-方法2 拨号之前会弹框询问用户是否拨号,拨完后能

IOS中调用系统的电话、短信、邮件、浏览功能

iOS开发系列--通讯录.蓝牙.内购.GameCenter.iCloud.Passbook系统服务开发汇总 2015-01-13 09:16 by KenshinCui, 26990 阅读, 35 评论, 收藏, 编辑 --系统应用与系统服务 iOS开发过程中有时候难免会使用iOS内置的一些应用软件和服务,例如QQ通讯录.微信电话本会使用iOS的通讯录,一些第三方软件会在应用内发送短信等.今天将和大家一起学习如何使用系统应用.使用系统服务: 调用系统应用 使用系统服务目 录 短信与邮件 通讯录

如何在ios中集成微信登录功能

在ios中集成微信的登录功能有两种方法 1 用微信原生的api来做,这样做的好处就是轻量级,程序负重小,在Build Settings 中这样设置 然后设置 友盟的设置同上,但是要注意,加入你需要的所有框架到应用程序中

ios:在当前应用中打开已安装的另外一个ios应用

1.url schemes 的应用 在ios系统中通过openurl的方式打开另外一个应用A. 首先,你要知道A应用配置在info.plis中的url schemes. 我们假设A的url schemes配置为appA 然后,在自己工程的info.plist中LSApplicationQueriesSchemes配置可打开应用的白名单 在item中添加appA 最后,就是在代码中打开 [[UIApplication shareApplication] openURL:@"appA://"

iOS程序中打开其他程序的方法

1.1 如果被打开程序不是自己的,则要找到被打开App的URL Schemes. http://jbguide.me/2012/09/12/how-to-find-url-schemes%EF%BC%9F/ 1.2 如果被打开程序是自己写的,那么写程序时要实现 1) appname-info.plist里增加 <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes<

iOS中使用schema协议调用APP和使用iframe打开APP的例子

在iOS中,需要调起一个app可以使用schema协议,这是iOS原生支持的,并且因为iOS系统中都不能使用自己的浏览器内核,所以所有的浏览器都支持,这跟android生态不一样,android是可以自己搞内核的,但是iOS不行. 在iOS中提供了两种在浏览器中打开APP的方法:Smart App Banner和schema协议. Smart App Banner 即通过一个meta 标签,在标签上带上app的信息,和打开后的行为,例如:app-id之类的,代码形如: <meta name=&quo