我的GitHub
0%

iOS内测分发

iOS内测分发

2019-12-10更新

gitee似乎不让下载了。可以考虑放到别的带https的地方,比如腾讯云的对象存储桶,github等等,反正有https就行,方法不变。

2019-11-15更新

不要再问android怎么搞了。。。直接apk往仓库一丢,网页给个链接,点一下不就完事了,比iOS省事多了

背景:

我写博客一般都会写背景,因为我觉得光写某个技术点没有意义,技术最终都是为业务服务,因此我喜欢交代自己的使用场景,基于什么原因,我做过哪些常识,为什么最终这么做,这么做能解决我的什么问题….

我们是一个小业务部,而且是传统行业转型互联网,业务部内还处于”史前洪荒”的状况,各种现在流行的东西都没有使用,移动端更是如此,开发迭代出的app都是靠微信/内部邮件转发来转发去,iOS更难受,由于ipa包不能像Android一样,随下随装,”必须”依赖电脑用iTools或类似的工具去安装ipa包,很是繁琐.

说到这里肯定就有人提到:”为啥不用蒲公英(fir)等内测分发平台?”

说实话我第一反应也是盯上了这些,但是要实名信息注册啊QAQ,企业要传营业执照,个人要传身份证信息,作为一个较为保守且不想这么兴师动众的人,我选择了放弃使用这些平台.那么没办法了,只能自己写了.那么接下来,我会告诉你,他们是怎么把ipa包,转成一个二维码让你能够下载的(都是猜的).当然,有企业账号自己做企业分发,也可以用我这个方式

准备工作:

1.公司能够提供https的服务器/github/码云/其他任何能够提供https连接的平台(部门太小,么有https证书,所以最后我个人在这里选择了码云,原因只有一个,它在国内,快)

2.一个57x57的小图标和一个512x512的大图标(随便找两张图片做成这个尺寸就行)

一.在码云创建一个仓库

就正常创建即可,创建完如下图

image

然后把项目拉下来,git操作大家肯定都会.

拉下来以后,新建一个名为 index.html 的html文件,我们开始写网页(没错,就是写web,放心,不是很难得web)

代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<DOCTYPE html>
<html>

<head>
<meta charset="utf-8">
<title>测试下载</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
</head>

<body>
<a id="clickMe"
href="itms-services:///?action=download-manifest&url=plist文件的路径">点我下载iOS版本</a>

</body>

</html>
</DOCTYPE>

重点就是这个

1
2
<a id="clickMe"
href="itms-services:///?action=download-manifest&url=plist文件的路径">点我下载iOS版本</a>

url= 后面拼接的这个路径最后将填写为你放plist文件的路径,暂时可以先空着不填

创建完毕以后,提交文件到码云

二.开启page服务

应该有很多朋友看过什么<<利用github/gitee一分钟搭建自己的博客>>之类的文章,当然,没有看过也没关系,你可以简单的理解为,他给你一个地址,点开就是你写的index.html所呈现的静态网页.

这里我们要用到码云提供的page服务如下图(github也有,具体位置我就不截图了,可以百度搜一下)

image

image

这样,我们开启了服务,能看到有个地址,我们点击一下,就跳转到你写的页面了

image

三.iOS打包

接下来我们就要打包了.

有企业账户,自己做过企业分发的同学,应该会对我接下来的操作比较熟悉

依旧,我们和往常一样,选择打包.这里我们选打得是adhoc包

image

image
这里就要注意了,把这个选项勾上,实际上我们能做分发,就是通过这个选项,这个选项能允许你提供一个安全(https)的包下载路径,允许内测用户(设备在公司或个人账号下注册过 / 企业账户不限制用户)进行直接下载

image

这三个路径写你想放的路径(如果你不懂我这句话的意思,那你跟着我操作好了),我们回到之前创建的码云仓库

在仓库中,新建一个ios文件夹,再ios文件夹下新建一个app文件夹,用来存放ipa包

在ios文件夹下再新建一个icons文件夹,把准备好的两张图片丢进去,57和512的,像这样

image

接着,拷贝你刚刚在码云生成的链接,并在后面拼接路径,例如:

1
2
3
4
5
//我在码云生成的链接为https://wuxinggg.gitee.io/wuxinggg.gitee.io
我要填写的三个路径分别为:xxx.ipa为打包出来的ipa文件名
https://wuxinggg.gitee.io/wuxinggg.gitee.io/ios/app/xxxx.ipa
https://wuxinggg.gitee.io/wuxinggg.gitee.io/ios/icons/appicon1.png
https://wuxinggg.gitee.io/wuxinggg.gitee.io/ios/icons/appicon2.png

然后正常打包,最后你打包出来的文件里会包含一个
ipa包和一个名为manifest.plist的文件
将这两个文件,放入刚刚的app文件夹下

四.修改index.html中的值

修改为你放置manifest的路径,例如

1
2
<a id="clickMe"
href="itms-services:///?action=download-manifest&url=https://wuxinggg.gitee.io/wuxinggg.gitee.io/ios/app/manifest.plist">点我下载iOS版本</a>

五.提交码云仓库,并刷新page服务

六.用ios设备上的浏览器访问提供的链接,点击下载,就能成功安装ipa包了

题外话 猜猜蒲公英他们的二维码怎么生成的

很简单,把

1
itms-services:///?action=download-manifest&url=https://wuxinggg.gitee.io/wuxinggg.gitee.io/ios/app/manifest.plist

这个地址转成二维码即可

不信?

百度搜一个二维码转码工具把你的地址转一下,然后扫码试试~

我是阿星,阿星的阿,阿星的星!