目录:
谷歌在Google I / O 2016上展示的最酷的功能之一是Android 7.0 Nougat的一部分,它是无缝更新。 虽然它不会华而不实或者在面向用户方面有很多东西,但它的完成细节很有趣,实际上很简单,你想知道它为什么花了这么长时间才发生。
我们来看一下。
什么是无缝更新?
Android更新工作到Marshmallow的方式涉及一些用户交互并且需要大量时间。 您会收到一条通知,告知有等待您的更新,当您说好的时候会开始下载。 一旦下载了所有内容,一个大文件就会在缓存分区中解压缩,系统会检查所有单个图像文件的完整性,以确保它们都使用正确的密钥签名并来自正确的位置。 然后,系统会提示您重新启动,但不会重启Android。
您最终进入设备的恢复软件,其中图像闪烁到手机内部存储器上的正确位置。 由于文件的复制和移动方式,这需要相当长的时间 - 这是一个逐位传输。 文件实际上以块的形式移动到内存中,从原始位置擦除并重写到新位置。 这是确保在安装过程中不会损坏任何内容的最佳方法。
使用Android N,您的手机可以像Chromebook一样更新,同时您还可以使用它
一切就绪后,您的手机将重新启动并等待运行时组件查看系统并将您的应用“升级”到最新版本。 它正在做的是为特定版本的Android运行时优化应用程序。 Android应用程序不会从您下载和安装的单个文件运行,而是预编译为odex文件。 这样,应用程序可以加载更快,并且启动过程(不计算第一次启动和更新后)将会快得多。
然后你再次使用你的手机。
虽然大多数人大部分时间都需要10到15分钟来升级操作系统并不会造成太大麻烦,但任何可以最大限度地减少停机时间的方法都是更好的方法。 无论何时需要或希望您的手机可用,您的手机都应该可用。 输入无缝更新 。
借助Android 7.0 Nougat,您的手机可以(不会更新 - 稍后会更新)Chrome OS更新。 所有下载和复制文件都是在您使用手机时在后台完成的,一旦完成,您将收到通知,系统将在您下次重新启动手机时进行升级。 对运行时编译器的更改意味着您不必在重新启动时完成更新所有应用程序的过程。
这听起来很酷 - 它是如何工作的?
无缝更新通过在手机上设置两个不同的系统分区来工作。 当使用可以执行无缝更新的电话时,所有解包和传输都在一个系统分区运行时完成,并且事物被复制并移动到第二个分区。 Android被划分为单独分区的方式意味着数据部分 - 您输入的有关应用程序的所有信息,地址簿或设置或游戏保存进度等内容 - 存储在实际系统所在地之外的单独位置文件直播。 这有利于系统安全(数据分区可以拥有自己的一组文件和文件夹权限),这使得无缝更新非常方便。
两个系统分区意味着将使用更多空间。
完成所有这些后,您可以重新启动并使用新的系统分区。 这是在不移动分区或重命名它们的情况下完成的,因为它们已编号。 读取引导过程中使用的配置文件(相当于家中Linux书呆子的/ etc / fstab),告诉内核和引导过程每个分区的启动和停止位置。 此文件更改为指向新系统分区而不是当前分区。 下次 更新时,将擦除并使用其他系统分区。 他们无缝地来回交换。
这不是新的。 如果您的计算机上安装了Chrome浏览器或拥有Chromebook,则这就是这些系统或应用更新的方式。 但它是Android的新功能,并做了两件事。 它可以防止你有太多的停机时间(并且有很多人会因为他们不想愚弄当前进程而解除升级通知)。 它更安全,因为它可以在您重新启动手机时自动发生。
其他重要的事情要知道
-
无缝更新不是制造商的要求。 您现有的手机未正确分区,无法执行无缝更新。 并且您不希望将来的更新尝试重新分区 - 内部存储器的设计目的是将其记录(每个分区所在的地图)写入一次并且永远不会更改。 这意味着制作下一部手机的人可能不会使用无缝更新功能,因为他们不必这样做。 我们知道2016款Nexus手机将启用它,但除此之外什么都没有。
-
应该有一些选择退出设置,因此如果你不希望这个过程没有自动化。 我没有完整的详细信息,但Google向我保证会有某种设置。 这不会是Windows 10风格的惨败。 我们会找到它,并告诉你一旦我们有一个电话在我们热的小手中使用它,我们在哪里看。
-
这将在手机的内部存储空间中占用更多空间。 它使用完整的第二个系统分区。 预计将使用几千兆字节并为其保留。
这只是Android 7.0 Nougat附带的众多引人入胜的改进之一。 我们将在本系列的后续部分中详细讨论这些变化和期望,您可以进入论坛讨论这一切。