iOS 自建企业级应用(In-House)分发平台
注意事项
自建分发平台,首先需要有一个可以提供下载功能的服务器,而且服务器需要支持HTTPS协议!
其实,使用七牛云就可以完成这些操作。
推荐方案
七牛云实践方案简述(感兴趣的朋友可以和我交流具体的实现方案):
买入一个域名并配置子域名用于App下载,然后去腾讯云申请一个免费的SSL证书,再去七牛云配置CDN以及HTTPS。
后续需要进行上传的文件,都可以存入七牛云中。
操作步骤
1.首先以Ad-hoc方式进行打包,然后导出.ipa文件;
2.自定义一个供浏览器获取的应用安装配置文件,比如当前版本为1.0.0,这个文件的文件名可以定义为:manifest_v1.0.0.plist;
manifest_v1.0.0.plist中定义了App的实际下载地址、图标、包名、版本、应用名称等信息;
在进行自定义manifest_v1.0.0.plist的操作之前,你需要将 57x57 和 512x512 像素的png文件、已导出的.ipa文件文件 上传到你的HTTPS服务器上,以供iOS系统下载资源;
根据个人情况,自定义文件里的内容:
- <?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>https://xxx.xxx.com/app_v1.1.1.ipa</string>
- </dict>
- <dict>
- <key>kind</key>
- <string>display-image</string>
- <key>url</key>
- <string>https://xxx.xxx.com/57x57.png</string>
- </dict>
- <dict>
- <key>kind</key>
- <string>full-size-image</string>
- <key>url</key>
- <string>https://xxx.xxx.com/512x512.png</string>
- </dict>
- </array>
- <key>metadata</key>
- <dict>
- <key>bundle-identifier</key>
- <string>com.your.app</string>
- <key>bundle-version</key>
- <string>1.0.0</string>
- <key>kind</key>
- <string>software</string>
- <key>title</key>
- <string>App-Name</string>
- </dict>
- </dict>
- </array>
- </dict>
- </plist>
3.将这个配置好的manifest_v1.0.0.plist文件上传到你的HTTPS服务器上,配置好manifest_v1.0.0.plist的外部访问路径,比如: https://xxx.xxx.com/manifest_v1.0.0.plist。
这个链接其实就是下载App时第一步需要下载的内容,iOS系统根据这个manifest_v1.0.0.plist去下载真正的App,然后进行安装。
4.在Safari浏览器中尝试访问 itms-services://?action=download-manifest&url=https://xxx.xxx.com/manifest_v1.0.0.plist (将网址改为你自己配置的域名)。
如果你的配置都是有效的,你将会看到系统的应用安装提示!
5.在后续更新中,每次更新都上传一个新版本的 app_va.b.c.ipa 文件到HTTPS服务器上,然后上传对应版本的已配置好的 manifest_va.b.c.plist 文件到HTTPS服务器上。
然后将下载地址改为 itms-services://?action=download-manifest&url=https://xxx.xxx.com/manifest_va.b.c.plist ,即可下载最新的版本啦!
参考文章:
Ficow原创,转载请注明出处: https://www.cnblogs.com/ficow/p/10039469.html
iOS 自建企业级应用(In-House)分发平台的更多相关文章
- 分析Tapjoy的模式—分发用于ios设备的企业级应用程序
下面简单介绍下Tapjoy的模式,供大家参考: Tapjoy最初的合作模式:“按安装奖励”(pay-per-install) Tapjoy利用非常成功的奖励性下载模式影响了App Store的免费游戏 ...
- iOS自建分发
1.首先满足具有https证书的域名和空间.2.通常使用github或者国内第三方托管平台.3.上传ipa文件到空间内,获取ipa文件的下载地址.4.然后编辑plist文件(注意:ipa文件和plis ...
- Maven--构建企业级仓库(二)
<Maven--搭建开发环境(一)> <Maven--构建企业级仓库(二)> <Maven—几个需要补充的问题(三)> 看到经历的两家公司 ...
- 手把手教你 iOS通过自己的服务器实现应用分发
第一步:打包ipa 1:可以是development.ad-hoc.enterprise任何一种打包方式,导出的ipa, 稍后会将安装包上传到服务器上. 2:如下图,箭头指的要打勾 3.点击下一步后出 ...
- 基于Spring4+SpringMVC4+Mybatis3+Hibernate4+Junit4框架构建高性能企业级的部标GPS监控平台
开发企业级的部标GPS监控平台,投入的开发力量很大,开发周期也很长,选择主流的开发语言以及成熟的开源技术框架来构建基础平台,是最恰当不过的事情,在设计之初就避免掉了技术选型的风险,避免以后在开发过程中 ...
- java中用中国网建提供的SMS短信平台发送短信
接下来的项目需求中提到需要短信发送功能,以前没有做过,因此便在网上搜了一下.大体上说的都是有三种方法,分别是sina提供的webservice接口.短信mao和中国网建提供的SMS短信平台. 这三种方 ...
- streamdataio 实时数据分发平台
streamdataio 是一个实时的数据分发平台(当然是收费的,但是设计部分可以借鉴),我们可以通过这个平台 方便的拉取rest api 数据,或者发布数据到后端,streamdataio 可以帮助 ...
- 短信验证登陆-中国网建提供的SMS短信平台
一.JAVA发送手机短信常见的有三种方式(如下所列): 使用webservice接口发送手机短信,这个可以使用sina提供的webservice进行发送,但是需要进行注册 使用短信mao的方式进行短信 ...
- iOS UI-创建空项目
一.创建工程 二.删除ViewController 三.在Supporting Files/Info.plist文件中清空值 四.创建新的控制器 五.写代码 1.在AppDelegate.h文件中 # ...
随机推荐
- Intel Active Management Technology
http://en.wikipedia.org/wiki/Intel_Active_Management_Technology Intel Active Management Technology F ...
- wxpython中控件对键盘输入无响应的可能原因
问题描述: 开发环境:Win7 32bit + Python2.7.6 + WxPython 3.0.1-b20140707 开发某初级CAD软件中,需要实现点击TreeCtrl控件的相应选择,实现G ...
- XJTUOJ wmq的A×B Problem FFT/NTT
wmq的A×B Problem 发布时间: 2017年4月9日 17:06 最后更新: 2017年4月9日 17:07 时间限制: 3000ms 内存限制: 512M 描述 这是一个非常简 ...
- spin_lock、spin_lock_irq、spin_lock_irqsave区别
void spin_lock(spinlock_t *lock); void spin_lock_irq(spinlock_t *lock); void spin_lock_irqsave(spinl ...
- Android源代码下载过程中无法下载repo的解决方法【转】
本文转载自:http://blog.csdn.net/shangyuan21/article/details/17618575 我们都知道下载Android源代码需要使用repo进行辅助下载,但是最进 ...
- dns服务器报错解决
搭了个dns服务器,配置完毕老是报错,这里总结一下常见思路: ①关闭firewalld ②关闭selinux ③/var/named里面的配置文件所属用户组是否是root:named ④named.c ...
- 后台while收发过程
fuse_loop_mt.c 中fuse_do_work函数使用while循环在后台不断运行,每一个while循环中,主要有两个操作. 1. fuse_session_receive_buf(mt-& ...
- 关于include,load的几个问题
参考:http://www.network-theory.co.uk/docs/gccintro/gccintro_17.html 1. include的文件在哪找,找不到会如何? 工具: gcc - ...
- NIO与IO的区别
nio是new io的简称,从jdk1.4就被引入了.现在的jdk已经到了1.6了,可以说不是什么新东西了.但其中的一些思想值得我来研究.这两天,我研究了下其中的套接字部分,有一些心得,在此分享. ...
- flask的config配置和给实例化传入参数
灵活性主要体现在配置上,需要什么就配置什么 from flask import Flask app = Flask(__name__) # type:Flask # 调试模式:是否开启调试模式并捕获异 ...