十五:首次打开(更新版本)APP向导界面

  第一次打开APP的时候会有一个向导,比如如何使用APP,有哪些核心功能,或者新出版本的时候新功能的介绍等等。可以封装到一个继承自UIView的类中(ZWPushGuideView),并在Xib中进行自己需要的显示的向导内容,或纯代码。

  首先查下当前版本号是多少

1         //打印出info.plist中的内容
2         ZWLog(@"%@",[NSBundle mainBundle].infoDictionary);
3         //上面打印出来的是个数组
4         ZWLog(@"%@",[NSBundle mainBundle].infoDictionary[@"CFBundleShortVersionString"]);

  然后使用类方法取出当前版本号和新版本号的对比

 1 + (void)show
 2 {
 3     mainBundle].infoDictionary[@"CFBundleShortVersionString"]);
 4     NSString *key = @"CFBundleShortVersionString";
 5     //获得当前软件的版本号
 6     NSString *currenVersion = [NSBundle mainBundle].infoDictionary[key];
 7     //获得沙盒中存储的版本号
 8     NSString *sandboxVersion = [[NSUserDefaults standardUserDefaults] stringForKey:key];
 9     if (![currenVersion isEqualToString:sandboxVersion]) {
10         //创建window
11         UIWindow *window = [UIApplication sharedApplication].keyWindow;
12         ZWPushGuideView *guideView = [ZWPushGuideView guideView];
13         guideView.frame = window.bounds;
14         [window addSubview:guideView];
15         //存储最新的版本号版本号
16         [[NSUserDefaults standardUserDefaults] setValue:currenVersion forKey:key];
17         //马上同步到沙盒中
18         [[NSUserDefaults standardUserDefaults] synchronize];
19     }
20 }

  最后在AppDelegate.m中

//显示推送引导
[ZWPushGuideView show];
时间: 2024-10-07 00:42:18

十五:首次打开(更新版本)APP向导界面的相关文章

八数码问题强化版:十五数码问题idA*版本

---恢复内容开始--- 上一次介绍过dbfs版本,这次来介绍idA*版本. 首先要理解idA*算法的思想,是将迭代加深与A*的结合,将估价函数h(n)作为迭代的限制值,进行dfs. (A*和迭代加深的介绍等有时间再写出来吧) 对所有点(除0以外的)进行曼哈顿距离计算(目标状态到初始状态),h(n)为当前节点的各点的曼哈顿距离和. 在代码中看: #include<cstdio> #include<algorithm> #include<cstring> #define

iOS中app在iTunes中更新版本流程

昨天终于把新版本的app上传了,我能说我在上传的前一分钟都在改bug吗 对这个版本的app我实在是没有什么信心去期盼它可以通过苹果残酷的审核 第一次去做更新版本这件事我也看了很多资料,大多数是网络博客 每次看到那些步骤详细,图文混排的博客,心中一直都存感激之情 程序员的世界总是略显孤独,有时会羡慕运营部的喧闹,但是,看到这么多博客,我想这也是我们的交流方式 我去,想文艺一下发现自己词穷 在已经在iTunes发布app的情况下,进行新版本的发布 首先,需要两个文件:production ver,p

第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表、课程机构表、讲师表

第三百七十五节,Django+Xadmin打造上线标准的在线教育平台-创建课程机构app,在models.py文件生成3张表,城市表.课程机构表.讲师表 创建名称为app_organization的课程机构APP,写数据库操作文件models.py models.py文件 #!/usr/bin/env python # -*- coding:utf-8 -*- from __future__ import unicode_literals from datetime import datetim

VSTO学习笔记(十五)Office 2013 初体验

原文:VSTO学习笔记(十五)Office 2013 初体验 Office 2013 近期发布了首个面向消费者的预览版本,我也于第一时间进行了更新试用.从此开始VSTO系列全面转向Office 2013平台,即VSTO 5.0. 本系列所有测试代码均在Visual Studio 2012 Ultimate RC + Office 2013 Professional Plus x64 Preview 上测试通过 为了配合Windows 8,微软的很多软件风格都逐渐Metro化,Office作为拳头

S3C2416裸机开发系列十五_GCC下uCOS的移植(1)

S3C2416裸机开发系列十五 GCC下uCOS的移植(1) 象棋小子    1048272975 操作系统是用来管理系统硬件.软件及数据资源,控制程序运行,并为其它应用软件提供支持的一种系统软件.根据不同的种类,又可分为实时操作系统.桌面操作系统.服务器操作系统等.对于一些小型的应用,对系统实时性要求高,硬件资源有限等的情况下,应尽量避免使用复杂庞大的操作系统(如Linux),使用小型的实时操作系统(如uCOS)更能满足应用的需求.笔者此处就uCOS-II的移植作一个简单的介绍. 1. 代码准

深入浅出Zabbix 3.0 -- 第十五章 Zabbix 协议与API

今天是六.一儿童节,祝小朋友们节日快乐!发完此文就带我家小朋友出去玩耍了. 第十五章 Zabbix 协议与API 本章将介绍和开发相关的Zabbix协议和API的内容,通过对Zabbix协议和API的深入了解,你可以利用Zabbix协议编写客户端程序并将其嵌入的产品或系统中,并将数据发送到Zabbix server,这在无法安装Zabbixagent等程序的场景(例如专用的嵌入式系统)中非常有用.你也可以利用Zabbix API开发自己的业务系统,或灵活的与现有系统整合集成. 15.1 Zabb

NeHe OpenGL教程 第三十五课:播放AVI

转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线教程的编写,以及yarn的翻译整理表示感谢. NeHe OpenGL第三十五课:播放AVI 在OpenGL中播放AVI: 在OpenGL中如何播放AVI呢?利用Windows的API把每一帧作为纹理绑定到OpenGL中,虽然很慢,但它的效果不错.你可以试试. 首先我得说我非常喜欢这一章节.Jonat

我的MYSQL学习心得(十五)

我的MYSQL学习心得(十五) 我的MYSQL学习心得(一) 我的MYSQL学习心得(二) 我的MYSQL学习心得(三) 我的MYSQL学习心得(四) 我的MYSQL学习心得(五) 我的MYSQL学习心得(六) 我的MYSQL学习心得(七) 我的MYSQL学习心得(八) 我的MYSQL学习心得(九) 我的MYSQL学习心得(十) 我的MYSQL学习心得(十一) 我的MYSQL学习心得(十二) 我的MYSQL学习心得(十三) 我的MYSQL学习心得(十四) 这一篇<我的MYSQL学习心得(十五)>

android SDK manager 无法获取更新版本列表【转载】

http://mirrors.neusoft.edu.cn/eclipse/releases/luna/打开这个网址就可以看到adt的详细信息:  http://developer.android.com/sdk/installing/installing-adt.html 或者直接在你的eclipse的Help > Install New Software里面add,地址直接输入 https://dl-ssl.google.com/android/eclipse/https://dl-ssl.