iOS实现应用更新及强制更新
AppDelegate:
//检查版本更新
-(void)checkVersionUpdate{ //检查更新
NSString *stringVer = [[NSBundle mainBundle] objectForInfoDictionaryKey:(NSString*)kCFBundleVersionKey];
[[NetWorkRequest shareRequest]updateNewVersionWithversioncode:stringVer serverSuccessFn:^(id response) {
if ([[response objectForKey:@"qzupdate"] intValue] == &&
[[response objectForKey:@"updateurl"] length] > ) {
DebugLog(@"需要强制更新");
NSString *mes = [NSString stringWithFormat:@"发现最新版本%@,需更新后才能继续使用\n更新内容:%@",[response objectForKey:@"versioncode"],[response objectForKey:@"descr"]];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"提示"
message:mes
delegate:self
cancelButtonTitle:nil
otherButtonTitles:@"确定", nil];
alertView.tag = ;
[alertView show];
}else if ([[response objectForKey:@"isupdate"] intValue] == &&
[[response objectForKey:@"updateurl"] length] > ) { NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
NSString *version = [userDefaults objectForKey:@"Version_To_Update"];//待更新的版本
version_to_update = [response objectForKey:@"versioncode"];
if ([stringVer floatValue] < [version floatValue] &&
[version_to_update floatValue] <= [version floatValue]) {
//当前待更新版本已点击取消并在本地保存的待更新版本,不弹出提示框 }else {
//弹出提示框进行更新 NSString *mes = [NSString stringWithFormat:@"发现最新版本%@,是否更新?\n更新内容:%@",[response objectForKey:@"versioncode"],[response objectForKey:@"descr"]];
UIAlertView *alertTi = [[UIAlertView alloc] initWithTitle:@"提示"
message:mes
delegate:self
cancelButtonTitle:@"取消"
otherButtonTitles:@"确定", nil];
alertTi.tag = ;
[alertTi show];
} }else{
//DebugLog(@"不需要更新");
}
} serverFailureFn:^(NSError *error, id response) { }];
}
iOS实现应用更新及强制更新的更多相关文章
- iOS 版本更新(强制更新)检测问题
iOS 版本更新(强制更新)检测问题 通常iOS系统中是默认设置再wifi状态,且网络状况良好下自己更新应用的. 但是如果用户设置了不自动更新,但是我们的APP出现重要的版本,一定需要用户更新的情况下 ...
- iOS开发笔记10:圆点缩放动画、强制更新、远程推送加语音提醒及UIView截屏
1.使用CAReplicatorLayer制作等待动画 CALayer+CABasicAnimation可以制作很多简单的动画效果,之前的博客中介绍的“两个动画”,一个是利用一张渐变色图片+CABas ...
- iOS客户端的在线安装和更新——针对ADHoc证书
这篇文章纯给自己留个备份,所以对AdHoc证书内部分发和对iOS客户端开发不了解的请直接无视. 一般在iOS游戏或应用开发过程中,正式发布到App Store之前,都需要内部的测试,客户端的安装是个不 ...
- iOS 15 Beta升级卡死在更新进程,无法启动怎么办?
2021苹果全球开发者大会结束后,大批果粉迫不及待的尝试升级iOS 15测试版本,想第一时间体验新功能. 但是许多用户反馈升级一直卡死在"准备更新"."验证更新" ...
- WPF强制更新
,更新的时候选择最小版本号,就是强制更新
- maven缺少依赖包,强制更新命令
mvn clean install -e -U -e详细异常,-U强制更新
- ios开发数据库版本迁移手动更新迭代和自动更新迭代艺术(二)
由于大家都热衷于对ios开发数据库版本迁移手动更新迭代和自动更新迭代艺术(一)的浏览下面我分享下我的源文件git仓库: 用法(这边我是对缓存的一些操作不需要可以省去):https://github.c ...
- git 本地代码冲突解决,强制更新
git reset soft,hard,mixed之区别深解 git reset --hard 强制更新覆盖本地 GIT reset命令,似乎让人很迷惑,以至于误解,误用.但是事实上不应该如此难 ...
- Maven项目强制更新,解决Failed to read artifact descriptor for xxx.jar问题
导入的maven项目pom.xml现红叉 分析原因:在maven本地仓库中找不到相应的jar包. 解决方案:让maven强制更新依赖. 项目右击菜单,Maven -> Update Projec ...
随机推荐
- 那些年我们一起追逐的多线程(Thread、ThreadPool、委托异步调用、Task/TaskFactory、Parallerl、async和await)
一. 背景 在刚接触开发的头几年里,说实话,根本不考虑多线程的这个问题,貌似那时候脑子里也有没有多线程的这个概念,所有的业务都是一个线程来处理,不考虑性能问题,当然也没有考虑多线程操作一条记录存在的并 ...
- Python——错误笔记
1.同一个项目(Project)下,不同的库(Package)之间默认不相互引用,注意这样的错误: 2.使用sklearn之前,需要安装scipy库
- springBoot和Mybatis输出sql日志
利用slf4j来输出日志. 首先需要版本兼容的slf4j-log4j12.log4j.slf4j-api.slf4j-nop.slf4j-simple这5个包. 可以去maven知识库中找到这5个包的 ...
- GBDT原理及利用GBDT构造新的特征-Python实现
1. 背景 1.1 Gradient Boosting Gradient Boosting是一种Boosting的方法,它主要的思想是,每一次建立模型是在之前建立模型损失函数的梯度下降方向.损失函数是 ...
- 电脑右键新建excel工作表,但是扩展名是.xls,而不是.xlsx
怀疑是因为之前安装了wps,然后又卸载了,导致的.上网查阅,如下: excel默认新建xls 不是我的问题 Excel 2010/2013/2016在鼠标右键新建xls或xlsx文件后,打开报错“无法 ...
- Java(16)接口
一.接口:特殊的抽象类 1.1 语法 public interface 接口名 extends 接口1,接口2{ //1.常量 //2.抽象方法 } 1.2 特点 a.用interface修饰 b.接 ...
- java 注意事项---避免踩坑
1.......对象参数接收不能大写
- Capsules for Object Segmentation(理解)
0 - 背景 今年来卷积网络在计算机视觉任务上取得的显著成果,但仍然存在一些问题.去年Hinton等人提出了使用动态路由的新型网络结构——胶囊网络来解决卷积网络的不足,该新型结构在手写体识别以及小图像 ...
- Mask_RCNN学习记录(matterport版本)
资源链接 Mask R-CNN论文 matterport版本的GitHub 基于Keras和Tensorflow GitHub上还有Facebook的官方实现版本:Detectron maskrcnn ...
- 基于注解的SpringMVC自定义DispatcherServlet配置
通过重载AbstractAnnotationConfigDispatcherServletInitializer实现类的customizeRegistration()方法来自定义DispatcherS ...