通过扫码自定义链接安装iOS app,版本更新总结。
1、打包ipa,plist
工具:xcode6
证书:企业级开发证书
1.1)xcode6开始企业级打包时不在生成plist,需要自己编写:模版见下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>items</key>
<array>
<dict>
<key>assets</key>
<array>
<dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>(这里是IPA文件的路径, http路径就可以)</string>
<key>New item</key>
<string></string>
</dict>
</array>
<key>metadata</key>
<dict>
<key>bundle-identifier</key>
<string>c(这个名字在xcode 中查看)</string>
<key>bundle-version</key>
<string>1.1(app的版本,在xcode中看)</string>
<key>kind</key>
<string>software</string>
<key>title</key>
<string>(这里是APP的名称)</string>
</dict>
</dict>
</array>
</dict>
</plist>
方案1
2、选择https服务器
plist文件必须放到 https得服务器上。
这里使用七牛的免费域名,需要去七牛的网站上注册。
注册地址:https://portal.qiniu.com/
3、上传ipa,plist
注册完成后,会有一个免费的http域名可以用;
在域名设置-https 在申请一个https的域名,这里需要提交证件照片,等待审核,正常一天内审核通过;
审核通过后,上传plist文件和ipa文件到空间上(ipa也可以当在其他http的服务上)
在文件名右侧的 倒三角可以查看http访问地址:例:
http://7wy3rr.com1.z0.glb.clouddn.com/****.plist
转成https的访问地址为: https://dn-***.qbox.me/****.plist(前提是https的申请通过)
4、代码处理
4.1)代码中判断版本是否为最新
获取当前版本:NSDictionary *localDic =[[NSBundle mainBundle] infoDictionary];
NSString *currVersion =[localDic objectForKey:@"CFBundleShortVersionString"];
获取最新版本:本地数据库保存最新版本号
4.2)更新版本
#define APP_DownloadURL @"itms-services://?action=download-manifest&url=https://dn-*****.qbox.me/gsSales.plist"
NSURL *url = [NSURL URLWithString:APP_DownloadURL];
[[UIApplication sharedApplication] openURL:url];
5)、错误原因
5.1)process launch failed: timed out waiting for app to launch
1、确定plist得外链是否可用,就直接把 哪个https得外链 在 浏览器上打开,如果可以直接现实plist里得内容,这就可以说明 这个链接是没有问题得。
2、plist里面地址配置好,上传得网盘,生成https外链,然后 在苹果手机上输入
itms-services:///?action=download-manifest&url=https://XXXXXX.qbox.me/XXXXX.plist
把红色部分换成你的外链,这样就可以直接下载app了,
如果第一步正确,第二步不出下载,说明是plist可能有问题
如果 出现了下载效果,但下载过程中安装失败,那可能是你app证书得问题。
5.2)安装失败
1、网络原因 下载ipa包时报错 切换其他网络尝试
方案2:
http://fir.im/
提供app内测服务。
参考:
http://jingyan.baidu.com/article/a3aad71aa5fbfbb1fb0096b1.html
通过扫码自定义链接安装iOS app,版本更新总结。的更多相关文章
- 微信公众号支付|微信H5支付|微信扫码支付|小程序支付|APP微信支付解决方案总结
最近负责的一些项目开发,都用到了微信支付(微信公众号支付.微信H5支付.微信扫码支付.APP微信支付).在开发的过程中,在调试支付的过程中,或多或少都遇到了一些问题,今天总结下,分享,留存. 先说注意 ...
- 从扫码支付想到的超级APP主宰一切,数据!数据!还是数据!
前言 做室内定位的人其实内心都明白:基于指纹方法的移动端定位,无论paper每年出来多少,距离真正的大规模应用的距离还有多么遥远.指纹采集,指纹更新,似乎在生产实践上就是不可能的难题.所有还在基于人工 ...
- iOS APP版本更新跳转到App Store下载/更新方法
使用下面的连接即可跳转到App Store itms-apps://itunes.apple.com/cn/app/id*********** 其中********* ...
- 微信支付之扫码、APP、小程序支付接入详解
做电商平台的小伙伴都知道,支付服务是必不可少的一部分,今天我们开始就说说支付服务的接入及实现.目前在国内,几乎90%中小公司的支付系统都离不开微信支付和支付宝支付.那么大家要思考了,为什么微信支付和支 ...
- 把网站打包快速在线生成ios app的正确方法
下方的内容不用看了,请点这里 !点这里!IOS APP自助生成系统已上线,请马上去了解下: http://www.tao-jiujiu.com/post/188.html ============= ...
- ionic3 实现扫码功能
ionic3 通过插件phonegap-plugin-barcodescanner,调用机器硬件摄像头实现扫码功能. 首先当然先了解下 phonegap-plugin-barcodescanner,这 ...
- Spring Security整合企业微信的扫码登录,企微的API震惊到我了
本文代码: https://gitee.com/felord/spring-security-oauth2-tutorial/tree/wwopen/ 现在很多企业都接入了企业微信,作为私域社群工具, ...
- 利用websocket实现手机扫码登陆后,同步登陆信息到web端页面
新手必看 广播系统 事件系统 准备工作 初始化项目 引入 laravel-websockets 软件包 启动 websocket 监听 主要流程 创建两个页面 建立 socket 连接 手机端扫码登陆 ...
- 微信支付之扫码支付、公众号支付、H5支付、小程序支付相关业务流程分析总结
前言 很久以来,一直想写一篇微信支付有关的总结文档:一方面是总结自己的一些心得,另一方面也可以帮助别人,但是因种种原因未能完全理解透彻微信支付的几大支付方式,今天有幸做一些总结上的文章,也趁此机会,将 ...
随机推荐
- require.js和sea.js的区别
下面为大家讲解一下require.js和sea.js的区别.纯属个人意见,不喜勿喷. 首先原理上的区别 sea.js遵循CMD规范.书写方式类似node.js的书写模板代码.依赖的自动加载,配置的简洁 ...
- R的t-test检验
1.t-test的功能:单因素二水平的假设检验. H0:与我们想过要的结果相反的假设,比如我们想要的是两组数据的差异性,那么这个假设是:两组数据没有差异性. H1或Ha:备择假设,与H0假设相反. 2 ...
- Ubuntu: 无法使用su命令
Ubuntu 无法使用su命令解决方案 在Ubuntu上编译Qt环境时发现无法使用su命令切换到root用户,通过网上查找发现解决方案如下: xt@xt-ubuntu:~$ su密码: su:认证失败 ...
- ibecon后台运行
程序被硬关闭后,只能执行这三个回调,而且必须写在appdelegate中,退出ibeacons信息区域时会有延时10秒左右,进入时无延时 - (void)locationManager:(CLLoca ...
- Nginad Server安装
前言 Nginad是一个基于php的开源项目,它既可以作为静态配置的Ad Server,也可以作为动态的RTB Exchange使用.代码结构比较直接明了,挺适合用作学习的.本文如果有理解错误的地方, ...
- 【jsoi】第一季 [略]精简题解
UPD:好像有两道题的代码逃跑了?= =就先不找了,反正都是水题. 精简题解系列第四弹.(其实也不是那么精简啊= =) [JSOI2008]最大数maxnumber 单点修改,区间最大值查询,裸线段树 ...
- Linux嵌入式 -- 内核 - 内核链表
1. linux内核链表 链表数据结构的定义: struct list_head { struct list_head *next, *prev; }; list_head结构包含两个指向li ...
- hdoj1004--Let the Balloon Rise
Problem Description Contest time again! How excited it is to see balloons floating around. But to te ...
- QMouseEvent 的坐标__Win
1. QMouseEvent.x() 和 QMouseEvent.y() 是窗口里面的坐标,相当于 Windows API 里面的 ClientX和ClientY . 2. QMouseEvent.G ...
- 基于CSS3金属风格下拉菜单
基于CSS3金属风格下拉菜单,css,金属风格,下拉菜单,CSS3导航. css3按钮:http://www.huiyi8.com/css3/anniu/