Android定制ROM简介
这篇文章是为对自定义ROM、AOSP等词汇不太熟悉的技术爱好者和好奇的人写的。我希望通过向您介绍这个世界来开始博客写作。
在我们将注意力转向定制ROM之前,让我们先了解一些基础知识。
什么是操作系统?
维基百科对此的定义简洁而准确。
操作系统(OS)是管理计算机硬件、软件资源并为计算机程序提供通用服务的系统软件。
操作系统管理数字设备,包括所有移动手机。
移动操作系统管理其硬件(例如处理器、内存、摄像头、电池、WiFi)、软件资源(例如剪贴板、屏幕键盘)并为程序(在移动世界中通常称为应用)提供通用服务(例如访问摄像头、互联网、库)。
Android和iOS是两个众所周知的移动操作系统。
Android和AOSP
Android是世界上使用最广泛的操作系统。除了iPhone外,Android几乎是全球所有智能手机中使用的操作系统。Android使它们变得智能。那么谁制作了Android?
如果你认为是Google,你几乎是正确的。 Android是由一组公司(开放手机联盟)共同努力开发的。这个联盟由Google赞助。与任何程序或应用一样,Android由大量代码组成。这些代码主要由Google编写,然后作为其开源倡议Android操作系统项目(AOSP)的一部分向公众发布。这意味着任何人都可以下载所有Android代码,进行更改并提交改进!这还意味着如果代码中存在任何漏洞,更容易发现、报告并迅速修复。就像任何代码程序一样,必须从源代码构建Android才能使用。从AOSP构建的Android通常被称为原始Android。但等等…你的手机是否运行这个确切的AOSP代码?不!
你手机自带的Android
AOSP中的Android与预装在手机中的Android之间存在两个主要区别:
-
Google Play商店和GMS
Google Play商店是几乎所有设备中预装的应用市场。您可以在Play商店中查找、下载和安装手机上的应用。它们可以是免费的或付费的。您可能还没有听说过另一个术语,GMS——Google移动服务。
Google Mobile Services(GMS)是一组Google应用程序和API,帮助支持跨设备的功能。
GMS包括Play商店,它使应用程序更新变得简单,GMS实际上在消息传递和实时聊天应用程序中非常重要。 GMS使您能够将Google帐户与手机同步,并同步联系人和其他数据。这完全是由Google开发的。我会引用Google在其网站上对此的说法:
虽然Android开源项目(AOSP)提供了通用的设备级功能,例如电子邮件和通话,但GMS不是AOSP的一部分。 GMS仅通过与Google的许可证提供,并提供一整套流行的应用程序和基于云的服务。
在这里需要注意的是,Google向手机制造商提供许可证,以便它们可以预装这些应用程序和服务。 Google不提供将GMS安装到手机的任何其他方法,您不能仅仅抓取’apks’(Android应用程序包),在手机上安装它们并期望它们能够正常工作。在这里还需要注意的是,其中一些服务比普通应用程序‘更有特权’,即它们被安装为系统应用程序。您无法从手机中卸载Play商店和Play服务。有趣的是:Play服务将始终尝试在后台使用移动数据将Play商店静默更新到最新版本。
几乎所有Android手机都使用GMS。然而,由于一些国家(例如中国)已禁止Google,这些国家的手机没有预装GMS。这就是为什么在中国通常有不带GMS的手机的原因。
-
专有硬件代码、供应商用户界面和预装软件
接下来,有时需要一些专有代码来运行手机上的特定硬件。专有代码是不向公众公开的代码,由制造商拥有版权,为商业而创建。它可能是相机代码,可能是调整过的Android库本身,这取决于手机制造商公司。
MIUI、OneUI、ColorOS、OxygenOS、ZenUI等。所有这些都是由各自的手机制造商公司调整的Android的口味(定制用户界面),他们希望为他们的Android手机用户提供一种不同、特殊的体验。这些供应商从AOSP代码作为基础开始,然后修改代码以创建自己的Android版本。这个修改后的代码是专有和保密的。这些版本旨在在AOSP提供的功能之外提供额外的功能,一致的、有特色的外观,改进的用户体验等。
回想一下当您购买新手机时。在设置完手机后,您可能会注意到一些预装的应用程序,如Facebook、Amazon、也许是一些游戏、Netflix、一些供应商特定的应用程序(如三星和小米提供自己的应用商店)等。您可能想要其中一些,但大多数时候,它们是不需要的。这些被称为“增值应用程序”。之所以预装这些应用程序,是因为应用公司付给手机公司费用来这样做。这对于预算智能手机比旗舰智能手机更常见,因为这对盈利业务更有利。手机公司决定您是否可以卸载它们,如果您不能卸载它们,是否可以禁用它们。
我们现在对Android是什么有了基本的了解,也对我们手机上安装的Android有了了解。所以让我们开始了解定制ROM。
Android定制ROM
这些通常是Android的市场分发(通常是开源的)后期版本。开源:它们是从AOSP分叉而来,即它们的代码基础是AOSP,开发人员对该代码进行了一些更改。区别在于他们将此代码公开可用。市场分发:这些通常不预装在手机上,而是用户可以手动在其设备上安装这些定制ROM。
一些流行的定制ROM的例子包括LineageOS、DirtyUnicorns、PixelExperience ROM等。
让我们来看看在手机上使用定制ROM的利弊。
优势
我认为使用定制ROM的首要优势是自由、灵活性和选择的权力。随着我列举其他优势,这一点将会得到解释。
-
清洁、原始的Android体验: 定制ROM看起来与AOSP非常相似。与一开始在Android中使用的相同用户界面。它与Google在Pixel手机、Nexus手机和Android One项目中提供的界面非常相似。很少有厂商保持这种原始Android体验。其他厂商会强加一种看起来截然不同的用户界面,以突出自己,进行市场和品牌推广,以取悦一个小但声音大的“粉丝群体”。
-
性能和电池寿命提升: 如果您的手机具有一个非常耗资源的供应商UI版本,那么您可能无法充分发挥手机硬件的优势。像MIUI这样的重型自定义UI在运行UI本身时消耗大量资源,为您运行的应用程序,尤其是RAM,留下较少的资源。如果像我一样拥有4GB RAM或更少的预算手机,那么您的自定义UI驱动的Android可能很难进行多任务处理。
- 如果您一次打开4-5个应用程序,那么最早打开的应用程序可能会被操作系统关闭,它简直无法负担在RAM中保留该应用程序。此外,为了弥补其繁重的UI和其他后台服务,供应商会使系统更加主动关闭后台应用程序。在定制ROM中,没有供应商端服务或额外的UI进程,系统在RAM管理方面更加胜任,并且在多任务处理方面显着更加出色。由AOSP开发人员编写的原始用户界面更加流畅,整个系统的视觉延迟较小。并且图形(游戏)性能稍有提高,因为UI使用更少的资源进行渲染。
- 现实生活中的例子:如果我使用MIUI(预装在我的Redmi Note 7 Pro手机上),玩类似《使命召唤》的游戏,切换到Whatsapp快速回复(或接电话),然后回到《使命召唤》,游戏会重新启动。但是如果我使用定制ROM,即使在离开另一个应用程序后,游戏也不会重新启动,即使过了几分钟。
-
无增值软件: 大多数定制ROM都非常简化。优秀的定制ROM确保所有预装的应用程序都是开源的,并且它们对基本手机功能是必需的。尽管当今一些ROM试图遵循Pixel的路线,并用它们的Google替代品替换大多数系统应用程序。通过自定义恢复(我将在另一篇博客中介绍),您实际上可以选择要预安装的哪些Google应用程序。
-
隐私: 定制ROM不包含供应商在“改善用户体验”的名义下包含的数据收集和分析软件。尽管一些定制ROM具有简单的匿名统计报告,但可以轻松关闭。您可以选择通过我们称之为“GApps包”安装GMS应用程序和服务,或者您可以安装替代方案,如microG。使用microG,您可以拥有完全不含Google的、真正开源、安全且注重隐私的Android。
-
更快的更新: 定制ROM开发人员通常是小团队协作,会在发布之前在他们自己的手机上测试每个新的更新。因此,您将获得比供应商ROM更快的更新。在AOSP发布新的月度安全补丁后,开发人员只需几天时间就能更新他们的定制ROM。更快的更新意味着您的Android手机对系统中新发现的漏洞更加安全。
-
无广告: 开源软件简单无法包含广告。如果有广告,某人可以轻松地调整软件的那一部分并发布同一软件的无广告版本。与此同时,一些预装的供应商应用程序包含令人讨厌的广告。
-
更新的Android版本: 手机供应商通常只提供一到两个Android版本的升级。例如,我曾拥有一台华硕Zenfone 3,它配备了Android 6.0(棉花糖),并升级到了Android 8.0(奥利奥)。定制ROM开发人员能够为手机提供更近期的Android版本。对于Zenfone 3,基于Android 9.0(派)的定制ROM是可用的!另一个例子:联想ZUK Z2 Pro官方升级至Android 8.0(奥利奥),但定制ROM甚至可用于Android 11.0!
这里有更多的优点,但让我们转向缺点。
缺点
这些大多数都可以通过一个简单的措施来避免——做好你的调查。
安装定制ROM需要解锁手机的引导加载程序。 许多供应商提供了此工具,但他们会劝阻您解锁引导加载程序。有些供应商在您的设备上安装定制ROM时会取消设备的保修。他们这样做是因为您将在手机上安装他们无法提供支持的定制软件。如果您疏忽大意并设法“硬砖”(见第3点)您的设备,公司就不应该负责。但这是非常罕见的情况,保修也会因硬件问题而失效。
注意:一些公司(如小米)将考虑如果您锁定引导加载程序并再次安装供应商的自定义UI,则会考虑保修。这因供应商而异,您将在其自己的网站上找到有关此信息的更多信息。
- 错误: 供应商ROM经过严格测试,并得到了专业开发人员的支持。供应商还提供保修,并在一定程度上对其负责。所有这些都不适用于定制ROM。错误或软件问题主要取决于两个主要因素:
- A.错误可能出现在ROM本身或设备端源代码中。这取决于开发人员是否能够修复。
- B.有时在定制ROM中根本无法修复错误。这可能是由于供应商对某个组件的糟糕实现,也可能是由于其他无法避免的原因。
最后,最“可怕”的缺点是事情可能会出错。如果您不小心并安装了一个不适用于您的设备、而是为其他设备准备的文件,可能会导致您的手机在最坏的情况下无法使用。也可能发生开发人员在代码中犯了错误,导致相同的结果,或者在大多数情况下是一些小错误。因此,重要的是确保您安装的ROM与您的设备兼容且正常工作。开发人员通常在发布ROM时附上其自己设备的定制ROM安装截图。在涉及到定制ROM时,小心并在事先进行适当的查找是至关重要的。我将在此方面定义两个常用术语: - A.软砖:手机处于无法使用的状态。您可以将手机恢复正常,但这需要一些时间和精力。在某些情况下,您可能需要将其带到服务中心进行修复。
- B.硬砖:手机成为实际的砖块。如果您非常不走运或疏忽大意,可能会出现硬砖。您无法从这种状态中恢复手机。通常发生在敏感的手机分区损坏或以使手机无法启动的方式进行更改时。
某些应用可能不起作用或可能无法使用于该设备。 需要更高安全性的应用程序,如Netflix、银行应用程序,非常少量的游戏能够检测到您正在使用已解锁引导加载程序的定制ROM。有一些解决此问题的方法,我将在相关的博客文章中讨论。