随着公司的快速发展,团队规模也随之扩大,测试包的高效分发成为一个痛点。为解决这一痛点,提高团队的整体迭代效率,落实技术部『效率』关键词,我们立项了建设得物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分发的历程,可以总结出以下三个关键的痛点:

  • 百:在没有企业的阶段,很难突破个人证书分发的百人限制。

  • 多:无自研阶段,多证书分发体验差,难定位问题,支持多App耗费大费的人力。

  • 一:分发平台自研阶段,多证书多App合一分发的难点解决。

得物App分发平台设计

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

分发平台的设计主要分发两个阶段:

  • 第一阶段:夯实基础,借鉴三方方案,建设自己的单一证书分发平台,使其具备强定制化能力,为智能化分发做准备。

  • 第二阶段:智能分发阶段,这个阶段做一键获取测试包安装授权、自动化同步证书配置、智能化生成分发专属网页。

在第二阶段上线后,我们真正完成了分发平台的建设初衷,达成了和企业分发效果一致的目标。用户不需要关心自己在哪个证书,可以安装哪个测试包。一切都是智能化自动化完成,授权效率、多证书多App的维护成本几何性的下降。通过app分发管理后台,可以快捷的添加新App,并且可以为现有的App添加新证书支持。

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

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

  • 第一步:Testflight测试包分发的可能性探索和落地。

通过分析现有测试包安装用户的群体,我们发现一部分用户对测试包时效的要求很低,一周可能只安装一两次,甚至一个月才安装一两次,针对这一部分用户,提供证书名额有一些奢侈,Testflight的分发会更适合。

而Testflight分发的局限前文有提到,容易与线上包混淆,并且和App的灰度公测功能冲突。我们采用多地区分包的方式取消了某国的发布,独立创建App分发Testflight测试包,定时自动化交付测试包,解决了此问题。

  • 第二步:企业分发和ABM分发的探索。

迈出多元化的第一步后,我们还能做什么呢?两条路:企业分发、ABM分发。

在申请企业证书和Apple技术客服的沟通过程,向我推荐ABM商务管理来分发企业内部App,这一方式让我仿佛看到了曙光。其实不然,研究后发现ABM分发如要满足分发的需求,其前提是完整的MDM服务,还是依赖企业证书颁发的许可。ABM技术客服告诉我,没办法,这就是鸡生蛋,蛋生鸡的问题。

在研究ABM分发的坎坷过程中,通过研究资料文档和与ABM技术客服沟通发现,ABM分发可以分简单的MDM和完整的MDM及兑换码分发三种方式分发。

  • 简单MDM:这种方式依赖MacOS Server的描述文件管理器作为MDM服务,也可以做到管理BYOD的设备App,但有一些局限性,无法用ABM创建的管理式AppleId来为用户注册设备的凭据,仅可依赖Server的用户名密码登录注册设备。

  • 完整MDM:此方式依赖企业账户申请完ABM Vendor资格后颁发的许可证书,不再今天的讨论范围。(没有实践)

  • 兑换码分发:此方式仅支持企业App的分发,在ABM只有企业App可以购买许可和兑换码,而商业App只有购买许可一种方式。

我们从依赖简单MDM服务分发App的流程来了解一下ABM分发。

在此之前需要熟悉一些概念:

如图,ABM通过MDM服务与BYOD设备通信,推送在ABM中购买的企业App或商业App。分发的步骤可以分发以下几个环节:

  • 管理员在ABM中购买企业App或商业App的许可数量。通过生成授权文件同步至MDM服务器,这里是描述文件管理器。

  • 管理员在描述文件管理器配置相应的描述文件,用户通过注册链接和管理员提供的门户网站注册自己的设备。注册后,在描述文件管理器中,管理员可以管理这些设备,并且向这些设备或设备群组推送受管理的App。

  • 人员变动或权限变动后,管理员可以在描述文件管理器中移除设备,设备被移除后,推送安装的App可以配置自动从用户设备移除,保护企业数据。

完整的MDM服务分发比较类似,MDM服务的功能更加完善,并且可以建设企业内部的App商店,供企业员工选择安装。这个留待我们后续探索。

未来,我们可以做什么?

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

关注得物技术,携手走向技术的云端

前言随着公司的快速发展,团队规模也随之扩大,测试包的高效分发成为一个痛点。为解决这一痛点,提高团队的整体迭代效率,落实技术部『效率』关键词,我们立项了建设得物App分发平台项目。下面,我带领大家一起从得物App分发历程、得物App分发平台的设计、得物App多元化探索三个方面来了解整个得物App分发平台的建设历程。得物App分发历程主流的测试包分发渠道介绍在介绍得物App分发历程之前,首先需要了解目前比较主流的测试包的分发方式。目前主流的测试包分发平台有以上四种渠道,他们有..
PHP超级猫超级签名 分发 源码 安卓苹果 APP 分发 平台 源码 搬运的那个站的源码介绍上说的是最近的新版本,我也分不清新老版本有啥区别。 简单的搭建了下,能搭建起来,具体功能测试起来比较麻烦,就没有测试, 感兴趣的可以搭建学习研究下
对于规模较大的商家寻求出价、订单等处理效率是对商家经营较大的提升。 这些商家不只是在 得物 平台 进行商品出售,一般也会在其他电商如:天猫、京东等 平台 ,保证操作体验统一对于商家而言也是效率提升一部分。 规模化自动化的实现需要可靠的api接口,通过使用开放 平台 可以实现。 重要的一点是需要商家有研发能力 软件服务商 对于没有研发能力的商家,使用市面上的成熟erp服务商也是其中一种方式。 软件服务商以多 平台 、多店铺统一管理。甚至还提供了生产加工、仓储、OA等模块,为商家进
得物 APP 产品研究 得物 立足于年轻消费者市场,在懂得如何发掘年轻人的心理的情况下挖局年轻人的需求,也随着潮元素的迅速张开的市场, 得物 在潮流的领域上开拓出了新的天地,基于互联网大数据的时代-典型的马太效应,使得 得物 变成了年轻用户潮流风向标的发生阵地,当嘻哈和潮流文化逐渐侵90、00一代时, 得物 的出现刚好对接上了这一个时代对于潮流的需求,成为中国潮流文化沃土。 尤其是在消费主力逐渐升级为Z时代的年轻人的时候,与短视频的对接更是推动了 得物 在年轻用户中的消费占领趋势。 下面基于用户分析五要素来对 得物 App 进行简单的
A concept app that I made with Flutter, inspired by this: Wanna try it? Here's the Play store link: Plantly. Final result Screenshots (click to enlarge) Main page (plants list) When clicked on a plant image When clicked on the zoom icon Cart page (empty) Cart page with items What I've learned by doing this project Make more beautiful shadows Used the image_zoom package I can round the corners of the whole app (:mindblown:) Make the app fullscreen (hide th
校园跑腿 平台 的小程序和 APP 的具体 技术 实现可能因 平台 不同而有所差异,但大致可以分为以下几个方面: 1. 后端开发:这部分主要负责数据的存储、处理和管理,通常使用服务器端语言如 PHP、Java、Python 等编写。 2. 前端开发:这部分主要负责用户界面的开发,通常使用 HTML、CSS、JavaScript 等编写。 3. 数据库管理:这部分主要负责存储 平台 数据,通常使用关系型数据库,如 MySQL、PostgreSQL、SQL Server 等。 4. 第三方服务接入:校园跑腿 平台 可能需要和第三方服务,如支付、物流等进行对接,以便实现更丰富的功能。 5. 安全性:为了保护用户数据的安全, 平台 需要对数据进行加密,并采取措施防止 SQL 注入等安全漏洞。 这些 技术 的具体实现方式和使用的 技术 栈可能因项目不同而有所差异,但上述内容是校园跑腿 平台 的大致 技术 实现。