平台问题通常以技术问题的形式提出,却以成本问题的形式回答。实际上,这是一个分发问题——用户将如何找到并打开产品,比任何技术比较都更具决定性。
各个平台能做什么
Web 应用。 可在任何设备的浏览器中运行。无需安装,无需应用商店审核,更新对所有人立即生效。对设备硬件的访问能力有限,不会出现在应用商店中,离线能力虽然可以实现,但会受到限制。
小程序。 在宿主应用内运行。用户可以在自己已经使用的生态中找到它,几乎完全消除了安装障碍。其能力由宿主平台定义,需要经过审核流程,并且应用只能存在于该生态中。
原生应用。 安装在设备上。可完整访问硬件,支持后台运行和推送通知,并提供最佳性能。需要应用商店审核,用户必须主动选择安装,更新则取决于用户是否接受。
通常决定选择的平台分发差异
先问问用户第一次会如何接触到产品。
- 通过链接——来自消息、电子邮件或搜索结果。 Web 应用可以立即打开。原生应用则要求用户先访问应用商店、下载并创建账户,之后才能看到任何内容,而大多数人会在这个过程中离开。
- 在用户已经使用的现有生态中。 小程序只需点击几下即可打开,并且用户已经完成身份识别。
- 作为由一位长期、高频使用的用户每天使用的工具。 原生应用值得安装,此时安装对于用户来说不再像偶尔使用时那样构成障碍。
这就是为什么每季度使用一次的预订工具,与每天使用四十次的现场服务工具,即使功能列表看起来相似,也应该放在不同的平台上。
会迫使你做出选择的能力要求
有些需求本身就能决定答案:
- 后台运行——应用关闭时持续进行位置跟踪、按计划执行后台同步。仅原生应用支持。
- 向已关闭的应用发送可靠的推送通知。需要原生应用,或需要在宿主平台的消息规则内使用小程序。
- 深度硬件访问——持续读取传感器、控制专业相机、连接本地设备。需要原生应用。
- 大量使用离线功能并存储大量本地数据。原生应用对此处理得最为轻松。
- 无需安装即可即时访问——选择 Web 应用或小程序。
成本及其发展方向
粗略来看,在功能集相同的情况下:Web 应用一次性构建成本最低;小程序成本相当或略高;原生应用成本更高,而分别为两种移动操作系统开发的成本最高。跨平台框架可以大幅缩小这一差距,当原生应用必须覆盖两个平台时,通常会采用这种方案。
不太明显的一点是:构建成本最低的平台,往往是后续拓展成本最高的平台。如果先构建 Web 应用,之后又需要后台位置功能,就意味着要从头开始构建原生应用——最初的投入无法收回。当能力需求尚不确定时,应在一开始就权衡这一风险,而不是等到第二年才发现。
更新与控制
Web 应用一经部署,所有人都会立即获得更新。原生应用则要等每位用户安装新版本,而且相当一部分用户永远不会更新——这意味着你必须支持旧版本,并谨慎处理可能导致旧版本无法运行的变更。
对于预计在第一年频繁变化的产品来说,这一差异十分重要,通常意味着在学习阶段应选择 Web 应用或小程序。
可以确定选择的问题
- 新用户第一次如何进入产品?
- 典型用户多久打开一次?
- 产品是否需要在关闭时执行任何操作?
- 是否需要访问浏览器无法访问的硬件?
- 是否必须在无网络连接时工作?
- 第一年会变更多少次?
这六个答案通常足以让选择变得清晰,而且值得在索取任何报价之前确定下来——因为针对错误平台提供的报价,并不是一个有用的数字。
相关 Manboo 服务
- Flutter 应用开发,适用于 iOS 和 Android MVP。
- 业务软件开发,适用于 CRM、预订、库存和工作流系统。
- 管理面板开发,适用于运营仪表板和后台管理。
- AI API 集成,适用于产品准备引入智能搜索、聊天或自动化功能的场景。
- 准备规划第一个版本时,可申请范围评审和项目估算。
