如何实现已发布app的自动更新
要实现app的自动更新,做两件事情就可以搞定
1.获取当前手机中的app版本号
我们可以通过查询mainbundle中的获取CFBundleVersion
NSDictionary *infoDict = [[NSBundlemainBundle] infoDictionary];NSString *cVersion = [infoDict objectForKey:@"CFBundleVersion"];
2.获取Appstore上的已发布的app版本号
这一步,有两种方案可供选择
a.在自己的服务器上存储最新版本号,自动检测更新的时候去取一下
b.通过访问Appstore的接口,获取已发布app的版本信息
请求链接为:http://itunes.apple.com/lookup?id=你的app应用id
例子:http://itunes.apple.com/lookup?id=532506118,获取的信息格式为json,所以我们可以很方便的对这些信息进行解析
{resultCount: 1, results: [{ kind: "software", features: [ ], supportedDevices: [ "iPadFourthGen4G", "iPad2Wifi", "iPhone4S", "iPadWifi", "iPad23G", "iPhone5", "iPhone5s", "iPadThirdGen", "iPhone5c", "iPodTouchFifthGen", "iPadMini", "iPadMini4G", "iPadFourthGen", "iPodTouchourthGen", "iPhone-3GS", "iPad3G", "iPadThirdGen4G", "iPodTouchThirdGen", "iPhone4" ], isGameCenterEnabled: false, artistViewUrl: "https://itunes.apple.com/us/artist/mycode/id532506121?uo=4", artworkUrl60: "http://a1558.phobos.apple.com/us/r30/Purple4/v4/32/92/8d/32928d1f-b731-8d53-0402-5f4db43ec15b/icon.png", screenshotUrls: [ "http://a3.mzstatic.com/us/r30/Purple/v4/d2/dc/ea/d2dceaaa-1ec8-9d87-048f-c80e89188796/screen1136x1136.jpeg", "http://a3.mzstatic.com/us/r30/Purple/v4/f8/58/73/f85873ed-62ae-30ad-97ba-d00340c29f3b/screen1136x1136.jpeg", "http://a3.mzstatic.com/us/r30/Purple/v4/98/0e/f0/980ef032-4d1e-1575-44c0-06390d7e72c6/screen1136x1136.jpeg", "http://a1.mzstatic.com/us/r30/Purple/v4/50/41/e9/5041e9e5-ac56-fdd6-1039-5b921d92592c/screen1136x1136.jpeg", "http://a1.mzstatic.com/us/r30/Purple/v4/b2/b2/c9/b2b2c9d1-9cc4-c1ce-1d18-ae41ae11fcad/screen1136x1136.jpeg" ], ipadScreenshotUrls: [ ], artworkUrl512: "http://a965.phobos.apple.com/us/r30/Purple/v4/60/59/36/60593661-0c5b-2398-4747-c2d7fd7e6618/mzl.tgrbhckz.png", artistId: 532506121, artistName: "mycode", price: 0, version: "5.62", description: "食神摇摇长期稳居美食排行第一名,获得无数美食媒体和吃货的好评,是年轻人找美食的不二之选。去哪吃?吃什么?只需摇摇,独创的个性化推荐帮你搞定! 七大看点 1、最简单!轻轻摇摇,就可找到好吃的餐厅! 2、最直接!不需要上翻下翻四处搜点评,食神的推荐理由帮你迅速决定去哪吃,吃什么! 3、最时尚!在华丽眩酷的界面中发现美食也是一种潮,更适合不甘淹没于大众的你! 4、最贴心!无论是旅行中找当地特色美食,还是等飞机时找快餐,食神摇摇都能为你贴心考虑合适的餐厅! 5、最馋人!独特的“按菜品找餐厅”的功能,无论想吃红烧肉还是驴打滚, 只要选个菜品就知道哪里最好吃! 6、最好玩!食神摇摇将微博、QQ等餐厅的美图统统整合进来,不仅可以分享美食发现,更可看看吃货们都喜欢吃什么! 7、最实用!食神摇摇已经和超过10家预定、外卖、优惠券合作,直接在食神摇摇中即可享受这些服务! 还在纠结去哪吃?吃什么?摇摇你的手机, 食神出马来帮你找到最合适的餐厅! 食神摇摇独创的场景式推荐,在旅行时知道为你推荐当地特色,在周末时为你推荐美食大餐,在节假日时为你推荐聚会宴请的好地方,在早餐、工作餐、夜宵时间,食神也会为你量身定制发现美食。 如果你觉得还不过瘾,不论你是想吃川菜, 湘菜, 江浙菜, 粤菜, 北京菜, 火锅, 西餐, 鲁菜, 家常菜, 东北菜, 日本料理, 韩国料理, 江西菜, 清真菜, 西北菜, 云南菜, 贵州菜, 素菜, 海鲜, 湖北菜, 东南亚菜, 快餐, 上海菜, 闽菜, 小吃, 烧烤, 农家菜, 咖啡, 甜点, 客家菜, 泰国菜, 河南菜, 淮扬菜, 新疆菜, 台湾菜, 天津菜;还是只是想找个面馆或者茶餐厅或者咖啡馆或者外卖预定或者24小时营业小馆,食神摇摇都可以帮你搞定!, 你做为出色的吃货,打算吃遍本地特色,尝试所有本地的特色餐厅以及推荐菜品,食神摇摇也一定能够满足你! 功能: 1、摇一摇,根据你的喜好及口味等,自动推荐最合适的餐厅; 2、和好友“组饭局”; 3、强大的当地特色菜推荐,旅行找美食神器; 4、轻松“发现”周边美食图片,周边优惠,周边团购; 5、和好友分享餐厅和图片,最酷的是,可以向你的好友炫耀你遍及各地的吃货足迹; 6、收藏的餐厅有优惠券和团购,第一时间通知你; 联系我们: 新浪微博 @食神摇摇 腾讯微博 @食神摇摇 百度搜索 食神摇摇 食神吃货QQ群 766009 要求: iOS4或者以上版本。", currency: "USD", genres: [ "Travel", "Food & Drink" ], genreIds: [ "6003", "6023" ], releaseDate: "2012-09-07T02:36:46Z", sellerName: "Èü¶Ê∏Ö Áéã", bundleId: "com.wwq.eat", trackId: 532506118, trackName: "食神摇摇-美食神器", primaryGenreName: "Travel", primaryGenreId: 6003, releaseNotes: "1. support iOS7; 2. bug fix.", formattedPrice: "Free", wrapperType: "software", trackCensoredName: "食神摇摇-美食神器", trackViewUrl: "https://itunes.apple.com/us/app/shi-shen-yao-yao-mei-shi-shen-qi/id532506118?mt=8&uo=4", contentAdvisoryRating: "4+", artworkUrl100: "http://a965.phobos.apple.com/us/r30/Purple/v4/60/59/36/60593661-0c5b-2398-4747-c2d7fd7e6618/mzl.tgrbhckz.png", languageCodesISO2A: [ "ZH" ], fileSizeBytes: "13482983", sellerUrl: "http://www.lehe.com", trackContentRating: "4+" } ] }
解析代码如下:
NSDictionary *jsonData = [responseStr JSONValue];NSArray *resultArray = [jsonData objectForKey:@"results"];NSDictionary *infoDic = [resultArray objectAtIndex:0];NSString *version = [infoDic objectForKey:@"version"]; // 最新版本号 NSString *trackViewUrl = [infoDic objectForKey:@"trackViewUrl"]; // 下载地址
最后我们把获取的最新版本号与本机中的app版本号进行对比,如果需要更新的话,可以通过openURL方法进行更新
参考文档地址:http://www.apple.com/itunes/affiliates/resources/documentation/itunes-store-web-service-search-api.html
转载于:https://www.cnblogs.com/polodede/p/3713247.html
如何实现已发布app的自动更新相关推荐
- android 系统(143)---Android实现App版本自动更新
Android实现App版本自动更新 现在很多的App中都会有一个检查版本的功能.例如斗鱼TV App的设置界面下: 当我们点击检查更新的时候,就会向服务器发起版本检测的请求.一般的处理方式是:服务器 ...
- winform发布(应用程序自动更新)、不允许跳过升级
今天给大家分享一下winform利用visual studio进行发布程序进行自动更新,在日常开发工作中当程序新增功能之后我们需要对程序进行升级,那么怎么让程序自动检测自动升级呢,下边一块学习一下. ...
- uniapp打包安卓APP实现自动更新(更新app)
先列出需要注意的地方,避免新手朋友们出错 如果uniapp运行app报错:ReferenceError: plus is not defined ,普通浏览器里没有plus环境,只有HBuilder真 ...
- [iOS]如何向 appstore 查询已发布 APP 的信息?
如果我们需要实现版本的 app 自动更新,那么我们需要获取当前运行程序的版本信息和 appstore 里发布的最新版本信息. 当前运行程序的版本信息,可以在 mainBundle 里面获取: NSDi ...
- iOS APP版本自动更新
1.版本自动更新一般采用API对应的方式 获取当前App Store上版本号 于本地存储的版本号对比 2.由服务端返回版本控制升级(容易审核不通过) 参考地址(很详细) https://blog.cs ...
- HBuilderX开发app实现自动更新版本
需求说明:使用MUI+Vue等技术并且通过HBuilderX打包开发移动app,在有版本更新时需要自动提示用户有新版本,并且可以点击下载自动安装. 思路说明: 应用打开时(使用Vue的生命周期mo ...
- Project Anarchy 2013.2 已发布,包含重大更新!
向大家宣布一个激动人心的好消息,Project Anarchy v2013.2 发布了! 本次发布包含大量新的功能和改善,例如 Autodesk® Scaleform® 和 Lua 绑定扩展.大大提升 ...
- Android APP在线自动更新安装
一.Android App的在线更新,主要分为热更新和一般更新,热更新是指下载修改的部分即可,一般更新是将整个安装包下载下来进行安装.本文主要探讨一般更新方法. 流程:(1)调用接口获取服务器内的AP ...
- hbuilderx版本怎么更新到新版本_HBuilderX开发app实现自动更新版本
需求说明:使用MUI+Vue等技术并且通过HBuilderX打包开发移动app,在有版本更新时需要自动提示用户有新版本,并且可以点击下载自动安装. 思路说明: 应用打开时(使用Vue的生命周期moun ...
最新文章
- Python 进阶_OOP 面向对象编程_类和继承
- Linux信号 四 异步等待信号与同步等待信号接口
- 简述css属性选择器的几种定义方式_CSS 属性选择器详解
- Spring源代码学习之where is Bean instance created
- memento模式_Java中的Memento设计模式-示例教程
- 软件工程概论课堂作业3
- docker容器配置加速器
- 安卓逆向 | 某新闻类APP urlSign
- 网易有道最新力作 有道词典笔3 结构拆解
- win7下获取进程CPU,内存,IO等信息
- Amazing!在线浏览 Stata Journal 单篇论文 (2001-2019)
- 合成大西瓜魔改和上线,最全教程!
- 基于SVM算法的人脸微笑识别
- #榜样的力量#工业富联富集云防疫 App丨数据猿新冠战“疫”公益策划
- 测试流程如何有效落地?
- Linux Shred命令
- C语言——Hello World
- asp.net实现视频在线播放
- 熟练的计算机应用技巧,计算机应用软件的学习方法探析
- 新来的23岁Java开发上来秀了波操作,真是扮猪吃老虎