iOS App托管和分发搭建

我们基本都用过蒲公英或者fir.im做应用分发,但是可有想过他们是怎么实现的吗
如果想自己包里内测包,内部分发,或者企业包的分发,可以参考

自建和三方的优劣对比

产品

优点

缺点

1自建稳定
UI和功能可自定义
没有使用限制
方便内测运营
需要开发和维护,投入较大
2三方

方便快捷,无需开发
功能完备(

  1. 版本管理,应用管理
  2. 应用合并
  3. 开放API
  4. 成员管理、统计等

)

  1. 有下载次数限制,一般为100次/天,且多款app共享该下载次数
  2. 可能需要安装密码,一些场景中不方便使用密码
  3. 可能不稳定,偶尔会挂掉
  4. 未加壳、加固的内测包上传到第三方平台,被反编译的风险增加
  5. 不方便运营,如app调起

用过的三方托管平台:

iOS包管理方案

概述

流程步骤:

  • 企业包:【打包】-【配置manifest】-【上传】-【开发前端下载页面】-【下载】
  • 内测包:【添加测试机】-【打包】-【配置manifest】-【上传】-【开发前端下载页面】-【下载】

背景原理:

  • Apple为了保护ipa包的安全性,不开放直接安装ipa的入口,由Safari的来触发系统命令,增加了直接拿到ipa包的难度(反编译ipa包后,开发信息泄漏的风险就很大)
  • 开发者把ipa的下载地址写入manifest文件,然后把manifest上传到云,这样就可以通过云地址来获取app的基本信息:包地址、icon大、icon小
  • 由Safari的命令(itms-services://?action=download-manifest&url=manifest的地址)来触发内部动作,拉取manifest,读取下载地址,然后下载ipa包,并安装到手机内
  • 用户通过前端页面,如点击按钮,由程序执行上面操作,那么这个安装的过程就被封装起来了,用户没有看到ipa包,只要点击一安装并确定就可以了。
  • 当然了,如果通过手段,分析前端请求和代码,抓取到manifest的云地址,就可以看到ipa的下载地址,这样就拿到了ipa包,只不过是这个过程就比直接提供ipa要复杂很多,破解成本提高了一些。

具体做法

1、准备云存储服务(七牛、阿里),打开上传文件功能,有自己的api上传也可以。

2、打包勾选Additional Options,并填写下载地址、图片地址。

一般来说,先上传图到云,拿到图片地址,然后修改文件名部分就行了,下次上传还使用同样的文件名就 OK 了

配图:

3、上传ipa到配置好的地址,上传manifest.plist文件

这里有个tips,第二步骤就是的配置就是为了打包后多生成一个manifest.plist文件,如果你很熟练,可以跳过配置,直接打包,然后自己去修改manifest文件,再上传到云,效果是一样的。具体manifest是什么样的,自己打包生成一个看下。特别是自己开发包管理的后台管理功能时,应该熟manifest文件的管理。

4、在Safari中安装app

设manifest地址为url,则可在Safari中输入itms-services://?action=download-manifest&url=url,然后会提示是否下载,确定即可下载。这里需要主要的是,如果url中有特殊字符,需要编码。在Safari中输入的链接仅仅是测试你的配置做法是否正确,真正用的时候需要前端做个页面,来执行我们输入的地址命令,这样会更加友好

5、企业包和内侧包

如果打企业包,在开通企业账号的前提下,打包时选择Enterprise的方式即可

如果打内测包,需要提前把测试机的UDID导入公司的测试名单内,导入方法这里就不啰嗦了,打包时选择Ad Hoc即可。

根据企业的需要,如果大范围内测,或者安全性要求比较高,或者对下载页面要求比较高,且有一定的人力资源,那么可以自己开发;如果只是内部使用,可以做的简单一点;如果人力紧张,且只是内部测试时使用,而且安全要求不是很高(代码中没什么可泄漏的)就别瞎折腾了,集中精力做业务吧,用三方服务来分发。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值