Android 碎片化让每个 Android 设备都变得更糟

Android 碎片化让每个 Android 设备都变得更糟

原文:https://medium.com/hackernoon/android-fragmentation-makes-every-android-device-worse-5b4be1b7c9b2

最近这篇关于 Android 碎片化的文章(即使是新手机也不能保证安装最新版本的 Android )引发了一些关于碎片化影响的思考。分散化通常被认为是非常负面的,尽管保罗·瑟罗特提供了一个的逆向视角(抱歉,付费墙)。瑟罗特的基本论点是,任何个人用户都只关心他们拥有的特定设备,而不是大量的 Android 设备,Android 上的整体应用覆盖率似乎相当不错。保罗总的来说是深思熟虑的,但这是一个肤浅的分析。

当 iOS 和 Android 出现时,与 Windows 等桌面操作系统相比,移动操作系统生态系统中一个令人惊叹的差异点是使用新版本的操作系统(包括主要的新版本)快速而定期地更新现有设备。在操作系统基础设施的支持下,这种快速自动更新也扩展到了应用生态系统。

看看苹果的商业模式,它主要专注于销售新设备,免费升级现有设备的决定似乎令人困惑。为什么不让这些旧设备看起来越来越过时,以刺激用户购买闪亮的新设备?

如果从应用开发者的角度来看,这个策略会变得更加清晰。围绕任何操作系统平台的深沟是深度利用操作系统 API 的应用程序的巨大生态系统。新的应用程序和现有的应用程序保持最新并利用新的操作系统功能,这一壕沟不断被挖得更深。其中一些 API 产生了内部网络效应,每一个增加支持的应用程序都会增加用户的价值。这种类型的 API 在桌面世界中最简单的例子是富复制和粘贴。在移动世界中,深度链接和共享支持是越多的应用程序支持越好的功能的例子。在这些 API 中,应用生态系统保持与新操作系统创新同步尤为重要。

对于应用程序开发人员来说,提供单一目标 API 和该 API 上的统一用户池的操作系统生态系统极大地简化了关于是否支持新操作系统功能的成本/收益分析。每个应用程序开发团队都在对功能进行分类,决定是否投资于应用程序内部的功能、利用操作系统功能的功能,或者是否投资于其他操作系统。开发团队总是在平衡他们业务的成本和收益。

当一个生态系统发展非常迅速时,很容易关注采用最新操作系统的新设备,因为这代表着整个用户群中的一个重要且不断增长的百分比。随着增长放缓,现有的设备基础在投资决策方面开始变得越来越重要。在这个基础上的分裂变得更有影响力。

当然,需要新设备功能(如生物传感器)的新操作系统功能显然仅限于新设备。在新硬件和新操作系统 API 表现出明显的新应用价值的情况下,支持这些 API 的决定,即使是在有限的一组设备中,对于应用程序开发人员来说仍然是非常清楚的。

尽管 Android 与 iOS 具有相似的更新能力,但实际上,多样化的 Android 生态系统带来的摩擦很早就导致了碎片化。从谷歌到主要的芯片制造商,到设备制造商,到运营商,再到最终用户,每一个阶段都会给用户带来更新延迟的机会。早期的碎片还来自三星和其他 OEM 厂商对低级芯片组支持的变化,一直到定制用户界面外壳。屏幕尺寸和分辨率的巨大差异也导致了严重的碎片化。有成千上万种不同的 Android 设备进入市场。

谷歌一直在努力解决这个问题。Google Play 服务公开了许多关键的应用程序 API,独立更新,并为其支持的 API 提供了更一致的跨生态系统目标。谷歌还在致力于“三倍 T1”项目,通过芯片制造商、设备制造商和运营商的渠道来加速操作系统的更新。

然而在实践中,典型的应用程序团队仍然不得不花费大量的周期来处理这些碎片问题。这些问题扭曲了所有的成本/收益分析。总体效果是既减少了在保持最新操作系统功能方面的投资,又减少了处理所有这些碎片化带来的开销的投资,而不是构建出色的新功能。当团队计划、构建、测试和支持任何新功能时,就会产生开销。

后果就是降低安卓应用的质量和数量。这对每一个 Android 用户都有直接和即时的影响。

瑟罗特的观点是“唯一真正重要的是应用程序,所有 Android 应用程序都运行良好”。“刚刚好”这一栏忽略了这一整体效应。

毫无疑问,智能手机和之前的个人电脑一样,已经达到了某种程度的设备充足性。瑟罗特认为,最近的 Android 版本在新平台功能方面“相当小”。当然,如果这些功能涉及很高的总成本,但总体影响很小,这正是人们所期望的决策和效果,因为很难在整个生态系统中端到端地推广它们(尤其包括应用程序支持)。

Windows 也深受碎片化、设备不足以及失去应用程序开发人员的支持和关注的影响。一个重要的后果是,越来越多的投资将花在无需应用支持就能“正常工作”的功能上,而不是需要大量的生态系统投资。这扭曲了决策,导致了更糟糕的结果。

我觉得有趣的是,一些具有网络效应的最强大的技术护城河(例如,这些 OS APIs 或 Office 文件格式)具有这种非常混乱的边界效应,可能会影响分析。对于文件格式,它是“如何兼容才算足够兼容”?每个竞争对手都提供了某种程度的互操作性。对于一些用户来说,使用一些功能,这种互操作性就足够了。但是总的来说,文件格式的兼容性曾经是,并且将继续是,这一惊人的技术护城河。操作系统 API 也有类似的特征。任何一个新的 API 有多重要?一些应用程序支持它有多重要?不可能很高。然而,总的影响是这个巨大的技术壁垒。

Android 的碎片化是一件大事,会对最终用户产生真实而直接的影响。


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除