版本更新有两种方式

一种是从服务器获得最新的版本信息和当前app的版本进行比较

另外一种是获得appStore上最新的版本信息和当前的app的版本进行比较

现在我来说一下如何通过appStore获得最新的版本(参考下面的苹果的官方文档)

https://affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api/

以获得QQ的版本信息为例子:可以获得QQ的图标,版本号和bundleID

打开这个链接

http://itunes.apple.com/search?term=QQ&country=CN&entity= iPadSoftware

term:代表app的名称

country:代表国家

entity:代表类型可选得有software, iPadSoftware, macSoftware,不说大家也明白

这个连接打开以后会获得一个JS的文件,内容是json格式的长这个样子

解析json文件获得app的信息

下面直接上代码

    NSString *appName = @"QQ"; // @"app的名称"
NSString *urlStr = [NSString stringWithFormat:@"http://itunes.apple.com/search?term=%@&country=CN&entity=software", appName];
NSURL *url = [NSURL URLWithString:urlStr];
NSData *json = [NSData dataWithContentsOfURL:url]; NSDictionary *dict = [NSJSONSerialization JSONObjectWithData:json options: error:NULL];//解析json文件
NSArray *results = [dict objectForKey:@"results"];
NSDictionary *result = [results objectAtIndex:]; NSString *versionStr = [result objectForKey:@"version"];//获得app的版本
self.version.text = versionStr; NSString * bundle = [result objectForKey:@"bundleId"];//获得app的id
self.bundle.text = bundle;

根据字段:artworkUrl100还能获得app的图标这里不再写了

获得appstore里面app的最新的版本信息,进行版本更新的更多相关文章

  1. KEGG下载某物种最新的版本信息(斑马鱼为例)

    步骤一:打开链接并选择物种 http://www.genome.jp/kegg-bin/get_htext?hsa00001+3101 步骤二:对文件进行解析 步骤三:统计信息 一级结构(6大类): ...

  2. HBuilderX开发app实现自动更新版本

      需求说明:使用MUI+Vue等技术并且通过HBuilderX打包开发移动app,在有版本更新时需要自动提示用户有新版本,并且可以点击下载自动安装. 思路说明: 应用打开时(使用Vue的生命周期mo ...

  3. App Store最新审核标准,中文版

    App store最新审核标准(2015.3)公布 1. 条款和条件 1.1 为App Store开发程序,开发者必须遵守 Program License Agreement (PLA).人机交互指南 ...

  4. (转)iOS如何取得APP的版本信息跟服务器对比进行升级提示?

    关键是自动取版本信息: [NSString stringWithFormat:@"Version %@",[[NSBundle mainBundle] objectForInfoD ...

  5. IT连创业系列:说说苹果商店AppStore上架App应用前后遇到的那些神坑

    前言: IT连创业的这个系列,又隔空了一个多月了. 不知道为什么,最近写文的冲动感下降了很多,如果不是因为特别忙,大概就因为上了年纪的原因了. 群里关注我创业的朋友,一直都在问,啥时候有新的文章讲述创 ...

  6. Cloudera Manager安装之利用parcels方式安装3或4节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(五)

    参考博客 Cloudera Manager安装之利用parcels方式安装单节点集群  Cloudera Manager安装之Cloudera Manager 5.3.X安装(三)(tar方式.rpm ...

  7. Cloudera Manager安装之利用parcels方式安装单节点集群(包含最新稳定版本或指定版本的安装)(添加服务)(CentOS6.5)(四)

    不多说,直接上干货! 福利 => 每天都推送 欢迎大家,关注微信扫码并加入我的4个微信公众号:   大数据躺过的坑      Java从入门到架构师      人工智能躺过的坑          ...

  8. Android APP 读取 AndroidManifest.xml 中的版本信息详解

    APP都会涉及到版本的问题,Android APP的版本信息保存在AndroidManifest.xml文件的顶部.如下图: 有2个属性表示,“android:versionCode”和“androi ...

  9. git拉取远程分支并创建本地分支和Git中从远程的分支获取最新的版本到本地

    git拉取远程分支并创建本地分支 一.查看远程分支 使用如下Git命令查看所有远程分支: git branch -r 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout ...

随机推荐

  1. 动态给div中新增html

    小颖最近接触的项目中用到了    innerHTML 所以小颖今天就自己做了个demo,当当当当代码请看下方: 页面效果:

  2. Android沉浸式通知栏设计

    转载博客:http://www.2cto.com/kf/201503/381348.html Android4.4新特性,系统状态栏一体化. 实现的步骤主要有以下几点: 1.android4.4 以上 ...

  3. IOS数据存储之NSUserDefaults

    前言: 作为从事Android开发人来说一定听说过SharedPreferences,然后要成为一名ios开发工程师来说咋能不知道NSUserDefaults!接下来让我们认识一下. NSUserDe ...

  4. 由position属性引申的关于css的进阶讨论(包含块、BFC、margin collapse)

    写这篇文章的起因是源于这篇文章:谈谈面试与面试题 中关于position的讨论,文中一开始就说的这句话: 面试的时候问个css的position属性能刷掉一半的人这是啥情况…… 其实这问题我本来打算的 ...

  5. java中hashMap的排序

    hashMap排序,示例: private void test(){ Map<String, List<String>> unSupportedDatesMap=new Has ...

  6. GCD-两个网络请求同步问题

    在网络请求的时候有时有这种需求 两个接口请求数据,然后我们才能做最后的数据处理.但是因为网络请求是移步的 .我们并不知道什么时候两个请求完成 . 通常面对这样的需求会自然的想到 多线程 啊 .表现真正 ...

  7. 1Z0-053 争议题目解析697

    1Z0-053 争议题目解析697 考试科目:1Z0-053 题库版本:V13.02 题库中原题为: 697.Which statement is true about a Scheduler-gen ...

  8. 使用GIT@OSChina 实现协同工作的方法。

    由于我新建了一个团队,团队里的人对于GIT都不太熟悉,所以才有了这篇文章.我用的是git-1.9.4的版本,所以我建议团队里面的成员也使用这个版本.首先是下载git,这个自己去网上找吧,一大堆,记得是 ...

  9. 在IIS EXPRESS下运行一个visual studio 项目,跳转到另一个项目的解决方案。

    原因是因为以前有一个项目也是3690端口,然后在3690端口上建立了一个网站,现在的新网站也是用的3690端口,那么会调用以前网站的WEB.CONFIG文件. 解决方法,右键单击网站,然后选择属性.在 ...

  10. Rafy 领域实体框架演示(2) - 新功能展示

    本文的演示需要先完成上一篇文章中的演示:<Rafy 领域实体框架示例(1) - 转换传统三层应用程序>.在完成改造传统的三层系统之后,本文将讲解使用 Rafy 实体框架后带来的一些常用功能 ...