一、背景
大家使用ios的app测试就会发现,安装ios测试包很麻烦。 打包好的ipa包无法直接安装,需要借助 i4助手类似的工具,而且要在PC端安装。 当需要安装包的人多时,使用很不方便。 于是今天这篇文章它来了
最终完成效果如下:
在手机输入服务器地址,能直接选择安装app包到手机上, 几秒安装 (当然外网也有较多类似平台, 蒲公英平台 河马分发等 考虑到信息安全,采用内部自行搭建)
二、环境依赖
需要 | 备注 |
---|---|
Web服务器 | 可以直接使用Mac上的Apache或者下载配置Nginx |
SSL证书 | 用来开启HTTPS服务 |
HTTPS服务 | 根据苹果官方文档,对于iOS 7.1及以系统必须使用HTTPS |
HTML页面 | 用来下载安装包的页面 |
IPA | 有个人开发者或者企业签名的IPA包 |
manifest.plist | IPA对应的清单文件 |
icon |
57*57和512*512的图片 |
1、web服务器: 搭建web的nginx参考此文章 https://www.jianshu.com/p/c3294887c6b6
2&3、SSL证书: https://www.jianshu.com/p/092049445f15
3、HTML:上图中访问ip后整个页面,源码参考:
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta http-equiv="Content-Style-Type" content="text/css"> <title></title> <meta name="Generator" content="Cocoa HTML Writer"> <meta name="CocoaVersion" content="1671"> <style type="text/css"> a {margin: 0.0px 0.0px 0.0px 0.0px; line-height: 48.0px; font: 48.0px Times; color: #0000e9} </style> </head> <body> <br> <br> <br> <p class="p3"><span class="s2"><a href="https://192.168.10.31/server.crt">====<span class="s3">安装证书</span>====</a></span></p> <br> <br> <br> <p class="p3"><span class="s2"><a href="itms-services://?action=download-manifest&url=https://192.168.10.31/mainfest-aaa.plist(此处填写你打包生成的plist文件)">====<span class="s3">你的应用名称(随便写)</span>====</a></span></p> <br> <br> <br> </body> </html>
4、 plist文件可以直接使用xcode打包时生成
<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://192.168.10.31/Mobile.ipa</string> </dict> <dict> <key>kind</key> <string>display-image</string> <key>needs-shine</key> <true/> <key>url</key> <string>https://192.168.10.31/icon.png</string> </dict> </array> <key>metadata</key> <dict> <key>forceUpdate</key> <false/> <key>bundle-identifier</key> <string>包名或账号名</string> <key>bundle-version</key> <string>4.4.0</string> <key>kind</key> <string>software</string> <key>title</key> <string>应用名</string> </dict> </dict> </array> </dict> </plist>
最后在手机*问时,先安装证书,再设置信任