注意事项
自建分发平台,首先需要有一个可以提供下载功能的服务器,而且服务器需要支持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原创,转载请注明出处!