在人们的心目中,安卓系统一直是开放、自由的代表。与竞争对手iOS相比,Android系统不仅开放了很大一部分源代码,而且对系统的使用限制也少得多。你可以在Android中自由安装应用程序,自由升级升级系统版本,自由调用各种AP??I,实现大量神奇的功能……这些体验造就了Android的独特魅力。然而,很多人不知道的是,情况正在逐渐发生变化。或许Android的自由之风已经大到脱离了谷歌的控制。近两年,谷歌开始对Android施加越来越多的束缚,以至于有人抱怨该系统越来越像iOS。那么最近的安卓版本增加了哪些限制呢?真的会像iOS那样变成一个封闭的系统吗?让我们来看看。限制系统降级说起对iOS的不满,相信很多用户都会投给“系统不能自由降级”的票。众所周知,苹果在推送新版iOS后,会关闭对旧版系统的验证。即使新系统出现锁频、卡顿、耗电等问题,用户也不得不咬牙忍耐。与iOS相比,Android升级难度更大,但降级要容易得多。许多机器可以通过Recovery或Bootloader轻松降级。不过,情况正在发生变化,Android系统升级升级的风格越来越像iOS了。在Android8.0中,谷歌在系统中加入了一项名为回滚保护的安全功能,可以防止设备回滚到旧版本的固件。谷歌认为这可以提高安全性。与新系统相比,旧系统存在更多漏洞,可能导致用户数据泄露。因此,需要限制用户降级到旧系统。安卓对系统验证越来越严格,安卓8.0也会限制系统回滚谷歌。这种说法与苹果的理念颇为相似。但实际上,用户并不会太在意这些看似与自己无关的安全问题,系统是否流畅才是更重要的。Android8.0新增“回滚保护”限制系统降级,饱受诟病,但好在谷歌没有苹果做得好。Android8.0引入的“回滚保护”并不是一个固定的功能。和Android的Bootloader一样,可以选择是否激活。也就是说,如果厂商愿意,他也可以关闭这个功能,但是就像解锁Bootloader一样,关闭“回滚保护”也会导致系统启动时出现一堆警告。由此看来,其实使用“回滚保护”来限制系统降级并不会带来实质性的改变——之前厂商也可以使用Bootloader来限制刷入旧系统,但现在只是一种附加的方法。无论是打开还是关闭,它都将保持不变。限制App后台运行与iOS相比,Android的“真后台”又是一个得天独厚的优势。我们知道AndroidApp可以在后台持续运行,可以实现多任务处理,比如一边上网一边用迅雷后台下载,解压等等。但是在新版本的Android系统中,App运行在背景遇到了前所未有的限制。在以前的Android系统中,App可以驻留在后台,通过广播来激活一些任务(比如自启动)。不过在Android8.0中,谷歌对后台服务和广播都进行了限制。如果使用API??level26以上的TargetSDK在Android8.0开发应用,系统会默认严格限制后台服务和广播,后台会在几分钟内停止;而如果应用没有使用那么高的API,你也可以在系统中手动设置后台限制。Android官网描述了后台限制。Android不再是这样的“真后台”。Android8.0对后台的限制无疑比之前的系统要严格很多。在引入Doze休眠机制的Android6.0/7.0中,App的Wakelock只有在屏幕熄灭一段时间后才会被切断。在Android8.0中,只要后台停止,Wakelock就会立即被切断,App无法唤醒手机浪费电量。毫无疑问,Android8.0的后台机制已经有点iOS的意思了。当然,与iOS相比,App在Android8.0中仍有一些突破后台限制的办法,但Android后台限制越来越严的大趋势是显而易见的。Android限制免费安装应用程序/后台功能?限制Apps的免费安装是Android自由的一大体现,即用户可以自由安装各种应用程序,而无需去特定的应用程序商店下载应用程序。这给了用户更多的选择,但也给了恶意代码入侵的机会。在近几年的Android上,谷歌也开始思考这个策略是否真的有必要。在以往的安卓系统中,可以在系统设置中开启安装未知来源的第三方应用,用户可以自由安装APK文件。虽然这很方便,但如果有人被引诱安装恶意软件,从“未知来源”安装应用程序可能会造成潜在危害。在Android8.0之后,谷歌移除了容易被滥用的“允许未知来源”开关。如果您仍然想安装您信任的开发者的应用程序,则需要为每个应用程序来源手动授予“安装未知应用程序”权限。例如,如果您使用浏览器下载APK,则必须授予浏览器安装未知应用程序的权限;如果您使用第三方商店,您还必须给予该商店相关权限。Android8.0对安装第三方应用的限制更加严格。不再是一劳永逸地检查系统中的某个开关的问题。虽然谷歌并没有完全限制用户安装应用程序,但它正在增加更多的限制。未来,Android可能需要输入密码/验证指纹才能安装其他来源的应用程序。希望谷歌永远不要阻挠这种做法,让Android失去其独特的魅力。限制应用对API的使用上面已经提到了Android8.0的诸多限制,下面说说Android9.0。与Android8.0相比,Android9.0的限制更为严格。例如,Android9.0可能会采用更严格的API访问权限,限制应用程序访问AndroidSDK中未记录的API。Android9.0还没有正式发布,不过一些开发者已经从报道中得到了一些信息。说明谷歌会锁定App可以访问的API,系统的部分API不再提供给App访问,App很难使用未经认证的API。这会造成什么样的结果?会直接导致很多App的推送分享功能失效。有些App之所以能够实现推送功能,是因为使用了一些第三方推送平台,需要接入相关的API。在Android9.0中,这条路可能行不通了。非官方的公共API可能无法在Android9.0中使用。限制App调用乱七八糟的API有利也有弊。缺点前面说了,这会在一定程度上限制推送分享等功能的实现,那么限制API有什么好处呢?现在很多APP为了实现推送功能,都会接入第三方推送平台的API。除了提供推送服务外,该平台还承包Apps相互唤醒并留在后台。毕竟想要一直收到推送,App的后台是不能随便破坏的。因此,在Android9.0中,App驻留在后台的一些手段将失效,这应该算是一件好事。限制App后台功能Android9.0除了限制API外,还开始限制App在后台的某些行为。过去,Android应用甚至可以在后台安静地做很多事情,比如录音、录像等,很多偷拍应用就是利用这个特性来实现相关功能的。但是在Android9.0中,App已经不能为所欲为,后台的很多功能已经无法实现。App不能再做后台调用相机之类的事情。比如在Android9.0中,App不能再在后台调用相机权限,不能再偷偷摸摸和偷偷录了。事实上,在Android8.0中,当应用在后台调用相机时,系统已经会在通知栏中显示警告信息。在Android9.0中,谷歌终于无所不用其极,彻底封杀了App在后台偷偷摸摸的动作。Android9.0除了禁止摄像头在后台通话外,还会干扰后台通话录音,会自动在通话中加入1400Hz的提示音,每15秒重复一次,让对方意识到当前通话正在录制中。此外,APP在后台的地理定位功能也受到了限制。App不能再一直请求定位,只能每隔一段时间发送一次定位请求。Android9.0对后台功能进行了限制和干扰,这其实有利于保护隐私,但也让系统功能缺乏了一些自由度,一些实用的应用无法再生效——比如一些防盗应用检测到手机被盗被盗后,它会自动拍照并发送给失主,这在新系统中是做不到的。Android的这种做法无疑是在向iOS靠拢。当然,目前还不像iOS那样,限制App只能在后台做播放音乐、下载等有限的事情。总结虽然在移动市场,Android依然是自由的代表,但实际上Android一直在增加各种限制,比如从开源的AOSP剥离越来越多的代码到闭源的GMS,增加App权限管理系统,限制App向存储目录写入数据等。每一个发布的新一代Android基本上都是限制最严的Android。顺应这一趋势,Android最终会达到与iOS相同的目标吗?Android9.0会带来怎样的体验?让我们一起期待五月份的谷歌I/O开发者大会吧。
