养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

关于iOS 7.1后下itms-services在线app

时间:2024-09-21 13:35:10

在IOS开发过程中,诸拗杏末总会遇到这样或者那样的问题。这几天做了一个app,需要直接更新客户端,正常体系是在appsto鸡堕樱陨re中更新,这个APP不上appstore,这样就需要使用到

itms-services://?action=download-manifest&url=这样一段代码。总结一下该方法的使用,代码如下:

NSURL*nsUrl=[NSURLURLWithString:[NSStringstringWithFormat:@"itms-services://?action=download-manifest&url=%@",self.client_url]];

//要用真机器

[[UIApplicationsharedApplication]openURL:nsUrl];

其中的self.client_url是来自网络可访问的一个plist文件链接,如:https://xxx.xxx.xxx/app.plist

这个plist文件示例会在之后的经验中说明。这里先说一下该方法使用。

在使用该方法时,遇到一个问题,那就是在IOS7.1以下的版本时可以直接安装plist中指定的APP。

当ios版本大于7.1时,会出现xxx.xxx.xxx证书无效,或者无法连接到xxx.xxx.xxx。

原因是在IOS7.1之后该方法要求链接必须是支持https的链接,如果自己能配置ssl倒是没多大问题。但是像本屌丝这样的程序猿。有点犯难了。嫌弃配置太麻烦。

这里提供一个方案。使用七牛云存储。在七牛上申请一个账号。开辟一个空间,然后需要实名认证,只有实名认证后才能上传多种格式的文件。七牛是支持ssl的,只需将app.plist文件放置在七牛上就可以了,其中app的ipamubiao地址只要保持可访问就行。

还有一点,七牛在你上传文件之后,默认的下载地址也就是其外链,是不带https的,需要在如图:

空间设置-》申请域名绑定,新增一个后缀为qbox.me的域名,这个是支持https的,然后将文件的链接域名改成这个新邦的域名即可。

关于iOS 7.1后下itms-services在线app

如原链接为http://xx.qiniudn.com/testapp.plist直接改成https://dn-xxx.qbox.me/testapp.plist中再放入

http://xx.qiniudn.com/testapp.plist直接改成https://dn-xxx.qbox.me/testapp.plist

代码如下:

self.client_url=@"https://dn-xxx.qbox.me/testapp.plist";

NSURL*nsUrl=[NSURLURLWithString:[NSStringstringWithFormat:@"itms-services://?action=download-manifest&url=%@",self.client_url]];

//要用真机器

[[UIApplicationsharedApplication]openURL:nsUrl];

这样我们就可以直接安装testapp.plist中指定的app了,当然前提是设备已经越狱,或者打包app的证书是企业证书。

© 一点知识