7

得物App分发平台的探索建设历程

 2 years ago
source link: https://segmentfault.com/a/1190000040082975
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

随着公司的快速发展,团队规模也随之扩大,测试包的高效分发成为一个痛点。为解决这一痛点,提高团队的整体迭代效率,落实技术部『效率』关键词,我们立项了建设得物App分发平台项目。下面,我带领大家一起从得物App分发历程、得物App分发平台的设计、得物App多元化探索三个方面来了解整个得物App分发平台的建设历程。

得物App分发历程

主流的测试包分发渠道介绍

在介绍得物App分发历程之前,首先需要了解目前比较主流的测试包的分发方式。

目前主流的测试包分发平台有以上四种渠道,他们有各自己的优缺点。可以再把他们分成两种类型:
一类是正规军:Testflight,它是苹果推荐的一种分发方式,每个App有1万名额,并且苹果更新了其分发机制后,可以通过分享链接分发给用户,现在很多公司使用它来做App的公测。但通过Testflight方式分发需要经历上传、二进制转换、审核的过程,提供测试的周期过长。
另一类就是三方自研,这一类都能比较快捷的分发测试包,但是在安装量上是有限制,比较依赖开发者证书。
对于企业来说,证书可以分为两种:个人证书和企业证书。

个人证书:比较容易申请,一年99刀,可以上线Appstore,也可以为100台手机设备分发测试包。
企业证书:很难申请,特别这两年国内几乎没有公司申请的到,一年299刀,不能上线Appstore,但是可以在企业内部分发App,可以认为没有设备限制。

得物App测试包的历程

了解了市场上测试包分发渠道后,我们一起回顾一下得物系App的分发历程。

起步阶段:低于100人,比较舒适的阶段,通过蒲公英来分发测试包。
工业革命:规模扩大,测试包安装需求暴增,一个开发者证书的百人名额已经不够用了。这个阶段通过添加证书同步分发,并采购部分测试iPad缓解阵痛。
分发平台:多证书多App智能化分发阶段,真正解决了安装难,效率低的痛点。
多元化分发:多元化探索阶段,从Testflight测试包分发,到企业分发、ABM分发的探索,完善分发平台的多元性。

分发中的难点及痛点

通过回顾得物App分发的历程,可以总结出以下三个关键的痛点:
image - 2021-05-28T185445.188.png

  • 百:在没有企业的阶段,很难突破个人证书分发的百人限制。
  • 多:无自研阶段,多证书分发体验差,难定位问题,支持多App耗费大费的人力。
  • 一:分发平台自研阶段,多证书多App合一分发的难点解决。

得物App分发平台设计

了解了测试包分发过程中的难点及痛点后,我们筹备立项了App分发平台的技术项目,以解决测试包安装难、效率低、多证书多App支持成本的问题。
分发平台的设计主要分发两个阶段:

  • 第一阶段:夯实基础,借鉴三方方案,建设自己的单一证书分发平台,使其具备强定制化能力,为智能化分发做准备。
  • 第二阶段:智能分发阶段,这个阶段做一键获取测试包安装授权、自动化同步证书配置、智能化生成分发专属网页。
    ![image - 2021-05-28T185524.497.png
    在第二阶段上线后,我们真正完成了分发平台的建设初衷,达成了和企业分发效果一致的目标。用户不需要关心自己在哪个证书,可以安装哪个测试包。一切都是智能化自动化完成,授权效率、多证书多App的维护成本几何性的下降。通过app分发管理后台,可以快捷的添加新App,并且可以为现有的App添加新证书支持。

    得物App分发平台多元化分发探索

    App分发平台经历两个大版本迭代上线后,我们探索的脚步就可以停止了吗?答案当然是否定的!多证书的智能分发虽然可以解决测试人数限制,但证书维护的成本比较高。为解决这个问题,我们进行了App分发平台多元性的探索。

  • 第一步:Testflight测试包分发的可能性探索和落地。
    通过分析现有测试包安装用户的群体,我们发现一部分用户对测试包时效的要求很低,一周可能只安装一两次,甚至一个月才安装一两次,针对这一部分用户,提供证书名额有一些奢侈,Testflight的分发会更适合。
    而Testflight分发的局限前文有提到,容易与线上包混淆,并且和App的灰度公测功能冲突。我们采用多地区分包的方式取消了某国的发布,独立创建App分发Testflight测试包,定时自动化交付测试包,解决了此问题。
  • 第二步:企业分发和ABM分发的探索。
    image - 2021-05-28T185558.166.png
    迈出多元化的第一步后,我们还能做什么呢?两条路:企业分发、ABM分发。
    在申请企业证书和Apple技术客服的沟通过程,向我推荐ABM商务管理来分发企业内部App,这一方式让我仿佛看到了曙光。其实不然,研究后发现ABM分发如要满足分发的需求,其前提是完整的MDM服务,还是依赖企业证书颁发的许可。ABM技术客服告诉我,没办法,这就是鸡生蛋,蛋生鸡的问题。
    在研究ABM分发的坎坷过程中,通过研究资料文档和与ABM技术客服沟通发现,ABM分发可以分简单的MDM和完整的MDM及兑换码分发三种方式分发。
    截屏2021-05-28 下午3.47.26.png
  • 简单MDM:这种方式依赖MacOS Server的描述文件管理器作为MDM服务,也可以做到管理BYOD的设备App,但有一些局限性,无法用ABM创建的管理式AppleId来为用户注册设备的凭据,仅可依赖Server的用户名密码登录注册设备。
  • 完整MDM:此方式依赖企业账户申请完ABM Vendor资格后颁发的许可证书,不再今天的讨论范围。(没有实践)
  • 兑换码分发:此方式仅支持企业App的分发,在ABM只有企业App可以购买许可和兑换码,而商业App只有购买许可一种方式。

我们从依赖简单MDM服务分发App的流程来了解一下ABM分发。
在此之前需要熟悉一些概念:
截屏2021-05-28 下午3.44.05.png
如图,ABM通过MDM服务与BYOD设备通信,推送在ABM中购买的企业App或商业App。分发的步骤可以分发以下几个环节:

  • 管理员在ABM中购买企业App或商业App的许可数量。通过生成授权文件同步至MDM服务器,这里是描述文件管理器。
  • 管理员在描述文件管理器配置相应的描述文件,用户通过注册链接和管理员提供的门户网站注册自己的设备。注册后,在描述文件管理器中,管理员可以管理这些设备,并且向这些设备或设备群组推送受管理的App。
  • 人员变动或权限变动后,管理员可以在描述文件管理器中移除设备,设备被移除后,推送安装的App可以配置自动从用户设备移除,保护企业数据。
    完整的MDM服务分发比较类似,MDM服务的功能更加完善,并且可以建设企业内部的App商店,供企业员工选择安装。这个留待我们后续探索。

未来,我们可以做什么?

image - 2021-05-28T185721.893.png
未来可以把分发集成到企业OA系统,与其联动生成差异化的用户身份,分类管理企业设备和个人的BYOD设备,高效支撑公司业务。未来可期。

文|大雄
关注得物技术,携手走向技术的云端


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK