目录:
在更新时,谷歌的手机和任何其他公司的手机之间存在着非常明确的鸿沟。 虽然存在一些例外情况,但您知道如果您使用Google最近销售的手机,则只能获得及时的Android更新。 简而言之,除非您的手机背面有Nexus或Pixel,否则获取更新可能与滚动骰子一样随机且不可预测。
每当我们开始讨论更新情况时,有人会提到谷歌可以更快地做到这一点,因为它不是通过运营商和制造手机硬件的公司。 这里还有很多其他内容,但是看看Google Android更新是如何诞生和交付的应该是一个有趣的对话!
两个误解
让我们首先解决我们大多数人错误的两件事:1)销售的设备数量有很大差异。 2)运营商和制造商不在图片中。
为一部手机构建软件更新与为一百万部手机构建软件更新相同。 部署有所不同,因为更多人正在下载它并且可能发生更多错误,但更改代码和测试一切是如何工作的完全独立于将使用它的手机数量。
Nexus 5X上的Android与Nexus 6P或Pixel上的Android相同。
Android不是在泡沫中开发的,也不是在一个测试中。 制造商仍在参与Pixel或Nexus手机的更新。 有人与制造各个组件的供应商合作,让所有工作按预期工作并整理许可,然后通过许多其他公司(如大型软件供应商和运营商)的输入进行测试。 Verizon(例如)在其网络上投入了相当高的价值,并且如果它造成了麻烦,它会迅速将特定电话列入黑名单。 谷歌让Verizon看看 之前 可能会发生这种情况,即使有问题的手机可能没有专门为Verizon打上品牌。
我们在这里的 真正 含义是,谷歌是唯一一家在Nexus或Pixel手机上为Android更新编写软件的公司。 这在技术上也不正确,但它会传达信息。 Android就像谷歌一样没有重大变化。
部署
谷歌非常擅长互联网。 它在Android中构建了一个FOTA更新( F irmware O ver T a A ir)系统,简单而强大。 系统软件中的应用程序ping服务器,如果响应指示更新可用,则启动特殊下载管理器服务并获取文件。 这些文件由Google托管,适用于几乎所有Android手机。
根据您的唯一设备ID和一些随机数生成,为您的手机分配一个更新槽。 通过不同时向所有人提供更新文件,下载服务器不会受到需求的影响,如果发现严重错误,则可以停止推出。
几乎所有其他手机都以同样的方式部署了更新。
如何开发更新
这是重要的部分。
所有更新,甚至是Nexus或Pixel更新,都有制造商和运营商的参与。 它们都通过Google Android更新服务器以相同的基本方式推出。 如何将更新的代码发送给负责构建软件的人员,这是Google具有明显优势的地方。
当谷歌“完成”更新时,三星仍未完成更新。
参与为Nexus或Pixel手机构建Android的人员基本上都是按照编写的方式使用Android代码。 从源代码构建Android并不困难。 为计算机提供的一些命令已经正确设置以编译Android,这是将所有部件构建成可以复制到手机的软件所需的全部内容。 “硬”工作是由人们编写和更改代码本身完成的。
三星或LG或任何其他公司销售的手机不按照编写方式使用代码。 这意味着他们不能只下载更新的部件并像Google一样构建他们的软件。 这对于那些每月安全补丁来说尤其明显,这些补丁需要适应与使用Android作为基础构建的自定义操作系统公司合作。
谷歌处理源代码并为自己的手机构建更新软件的方式与其他人的方式没有太大的不同。 开发人员对Android源进行更改并添加功能。 Google硬件公司采用该代码并与在手机中制作部件的公司合作,使其在每个型号上运行良好,然后通过测试计划向公众提供。
Google硬件不需要执行的步骤 - 将这些基础层更改工作到自定义操作系统的代码中 - 这使得Nexus或Pixel手机在等待更新时具有优势。
当您有不同的公司使用相同的基本代码构建不同的软件时,这是不可避免的。 目标是建立一个由不同公司构建的丰富生态系统,提供截然不同的体验,同时仍然在功能和应用程序级别与Android兼容。 我们不会想要任何其他方式。