iOS 自动更新

今天要做版本的自动更新 ,我觉得其实没做这个功能的必要  但是毕竟老板是老大嘛 就敲了敲   这是看了一个大大写的  忘记谁了  抱歉哈

NSError *error;

NSString *appid = @"appid";

NSString *urlStr = [NSString stringWithFormat:@"http://itunes.apple.com/lookup?id=%@",appid];

NSURL *url = [NSURL URLWithString:urlStr];

NSURLRequest *request = [NSURLRequest requestWithURL:url];

NSData *response = [NSURLConnection sendSynchronousRequest:request returningResponse:nil error:nil];

NSDictionary *appIndoDic = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];

if (error) {

NSLog(@"error---->%@",[error description]);

return;

}

NSArray *resultsArray = [appIndoDic objectForKey:@"results"];

if (![resultsArray count]) {

NSLog(@"error--->resul == nil");

return;

}

//    商店的信息

NSDictionary *infiDic = [resultsArray objectAtIndex:0];

//    NSLog(@"%@",infiDic);

//   上架的版本号

NSString *latestVersion = [infiDic objectForKey:@"version"];

//    网址

_trackViewUrl = [infiDic objectForKey:@"trackViewUrl"];

//    名字

NSString *trackName = [infiDic objectForKey:@"trackName"];

NSDictionary *infoDict = [[NSBundle mainBundle] infoDictionary];

//    当前版本号

NSString *currentVersion = [infoDict objectForKey:@"CFBundleVersion"];

//    NSLog(@"%@---------------%@",currentVersion,latestVersion);

double doublelatestVersion = [latestVersion doubleValue];

double doublecurrentVersion = [currentVersion doubleValue];

if (doublecurrentVersion < doublelatestVersion) {

NSString *titleSte = [NSString stringWithFormat:@"检查更新:%@",trackName];

NSString *messageStr = [NSString stringWithFormat:@"发现新版本(%@),是否升级",latestVersion];

UIAlertView *alert = [[UIAlertView alloc]initWithTitle:titleSte message:messageStr delegate:self cancelButtonTitle:@"取消" otherButtonTitles:@"升级", nil];

alert.delegate = self;

[alert show];

}

-(void)alertView:(UIAlertView *)alertView clickedButtonAtIndex:(NSInteger)buttonIndex

{

if (buttonIndex == 1) {

//跳转到苹果商店

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:_trackViewUrl]];

}

时间: 2024-10-10 00:49:38

iOS 自动更新的相关文章

友盟集成自动更新版本功能

以下是从友盟SDK文档中摘录出来的一些说明: iOS自动更新SDK集成指南 :http://dev.umeng.com/auto-update/ios/quick-start 1. 集成友盟iOS统计分析SDK 友盟自动更新功能在统计分析SDK中实现,请点击下面链接,先集成统计分析SDK 统计分析iOS SDK集成指南 2. 使用按渠道自动更新检测 在网站上分渠道提交app的版本号,更新日志及openURL后,您只需添加一行代码来完成自动更新检查. 请将下面代码添加到[MobClick star

友盟更新 自动更新替换方案

自动更新替换方案 这个服务因为目前面临N多非技术的挑战,导致我们很难再维护好这个服务: iOS的自动更新已经被苹果官方严格禁止了,苹果官方也数次联系友盟,要求我们及早把iOS的更新服务停掉: Android面临的问题更多,比如应用市场(集成友盟自动更新插件会导致市场审核被拒).部分系统厂商(部分厂商系统上,增量更新功能不能正常工作)以及部分运营商的拦截(比如有开发者反馈我们的下载CDN链接在某些地区的运营商会被禁止访问). 4.1日起,我们已经停止向新用户透出该服务:今年10.15以后,老用户也

Cordova webapp实战开发:(6)如何写一个iOS下自动更新的插件?

上一篇我们学习了如何写一个Andorid下自动更新的插件,我想还有一部分看本系列blog的开发人员希望学习在iOS下如何做插件的吧,那么今天你就可以来看看这篇文字了. 本次练习你能学到的 学习如何获取iOS当前版本号 学习iOS下插件类的编写 学习iOS下插件的配置 学习iOS下插件的调用 主要内容 APP中[检查更新]显示当前版本号 插件类的编写 在上一篇介绍Andorid插件时我们贴出了很多源码,这里也直接贴出代码,首先是iOS下插件的代码. 我们在Plugins下新建两个文件,一个头文件

利用pre平台实现iOS应用程序自动更新

1 // 2 // AppDelegate.m 3 // PreAutoUpdateDemo 4 // 5 // Created by mac on 15/12/18. 6 // Copyright © 2015年 mac. All rights reserved. 7 // 8 9 #import "AppDelegate.h" 10 11 #define USER_KEY @"1234321344SDFDFBVVFGDSVF" // 根据实际情况替换为自己的us

iOS 版本自动更新

AppDelegate.h - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {    [self  editionUpdate]; } //版本自动更新 -(void)editionUpdate{    NSString * [email protected]"192.168.......";//获取后台的接口    

【原创】我所理解的自动更新-客户端更新流程

创建更新线程,跟ui主线程通过message进行交互.1,去http://version.mygame.com/check.php? channelid=%d&appver=%d&resver=%d获取客户端最新版本信息.用curl获取,代码如下,至于curl的具体参数,man或者搜索引擎会告诉你答案 1 static size_t funcGetHttpText(void *ptr, size_t size, size_t nmemb, void *userdata) { 2 size_

【原创】我所理解的自动更新-APP发布与后台发布

发布后台 创建渠道:添加新的渠道,设置渠道名称,自动生成渠道id.    查看渠道:查看渠道基本信息,渠道app版本号,资源版本号,是否开启更新.    创建/更新APP:选择打包ios,android版本,设置渠道所属,设置版本日志,发送消息到APP Publish并等待反馈.    创建/更新资源:设置渠道所属,设置版本日志,发送消息到ResPackageTool并等待反馈. APP打包发布 从VersionServer里获取相应渠道的代码,保存到目录[channel-渠道号-版本号]. 

【原创】我所理解的自动更新-知识点讲解

itms-services协议可以通过safari,chrome等浏览器直接在IOS设备上安装应用程序.适用于安装企业签名或者已绑定设备id的测试签名的IPA.itms-services协议需要的文件有:一个ipa文件,一个plist文件,一个html文件和一个图片文件.其中,最主要的,就是plist文件. 1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE plist PUBLIC "

【原创】我所理解的自动更新-概要

概述    一般来说,游戏在开发完成后会通过渠道分发至玩家的手机上.这也就涉及到游戏的下载,安装.但是游戏还有一个重要的步骤,更新.对于手游而言,更新分为大版本更新和当前内容更新(大版本更新也会包含当前内容更新).大版本更新需要开发商重新提交游戏安装包,玩家重新下载安装包安装.而当前内容更新更多的是指更新脚本/资源等.那么问题来了,就技术而言,游戏通过什么方式下载安装?内容通过什么方式更新?恰好刚完成某手游的下载更新模块,就自己的理解,和大家聊聊游戏更新的那些事儿. 本文适用人群 本文档适用于自