play商店怎么退出账号登录,play账号怎么退出

  

  Android是Google发起的,但是现在Android的一些行为连Google都看不到。近日,Android发起了一项关于Android的调查――Google认为很多OEM Android厂商的Android系统存在严重的后台查杀问题,app很难在后台生存。   

  

  最近谷歌没有和部分安卓厂商付款。   

  

  谷歌认为,如今许多OEM厂商的Android系统违反了谷歌的政策,导致应用无法在后台持续运行。虽然大部分安卓app都不需要在后台保留进程,但是有些类别确实有这样的需求,比如健康记录类app,需要持续记录数据。但是有些OEM的Android系统是满足不了这种需求的。安卓开源项目AOSP的错误追踪器(error tracker)曾揭露,部分OEM厂商滥用安卓机制,禁止第三方应用在后台运行,甚至扼杀了AccessibilityService这一系统级无障碍服务进程。   

  

  其实谷歌已经为Android制定了杀后台的规则,但是OEM厂商在这方面并不透明。开发者和用户都无法知道OEM Android会干掉什么样的App后台。有时候OEM安卓厂商会把一些app列入白名单,比如一些社交和通讯软件,保证消息的及时推送。但是这些机制对于用户和开发者来说相当于黑匣子。人们无法判断哪个App能在后台运行,哪个不能,最后的体验也不尽如人意。   

  

  基于Linux系统,Android拥有完善的多后台机制。诞生之初,其桌面级的“真实背景”是玩家津津乐道的卖点。近几年安卓机的内存越来越大,甚至堆到了16G的容量,堪比台式PC。但是为什么Android生态系统中杀后台的现象越来越严重?简单说一下这个问题吧。   

  

  为什么安卓会大举杀后台?原生Android系统支持App后台保留流程,但传统上也有逐步后台退出机制。传统上,Android系统会给App进程分配不同的状态,比如Foreground_App(前台应用)、Visiable _ App(可见应用)、Secondary_App(二级应用)、Hidden_App(隐藏应用)、Content_Provider(内容提供者)和Empty_App(空应用)。内存不足时,系统会优先终止Empty_App进程和服务,释放内存;当内存再次紧张时,Content_Provider将被篡改,以此类推。   

  

  安卓App处于不同状态,系统会根据其判断查杀进程的优先级。   

  

  然而,并不是每个应用程序都诚实地为进程注册一个合理的状态。很多Android的app会用一些手段修改自己进程的属性来长时间留在后台。   

  

  比如一些流氓app会启动Foreground将自己注册为前台应用,使自己的后台成为最高优先级,永远不会被系统杀死;比如一个流氓App,会利用Android的浮动窗口机制,设置一个大小为1像素的透明浮动窗口,让App一直处于激活状态,避免被杀死在后台;比如流氓app预热,后台进程利用安卓系统周期性任务连锁唤醒。打开一个app,相当于唤醒了N个app的后台.   

  

   流氓App驻留后台的经典方法――利用广播接收机触发后台自启动   

  

  App的这些行为消耗了额外的资源,对续航和流畅度的负面影响肉眼可见。   

  

  为此,安卓系统官方也做出了一些回应。比如App随机注册startForeground状态,Android 7.0以后,会强制通知栏显示“XX正在后台运行”;比如安卓收紧了悬浮窗的权限,使用悬浮窗必须打开相应的开关;另一方面,Android 11在很大程度上唤醒了应用程序等之间的链条。   

  

  安卓7.0在通知栏公示了很多后台运行的app。后来,这些应用程序不得不改变它们留在后台的方式。   

  

  然而,Android后台机制的许多限制要求app使用更高版本的TargetAPI才能生效,而大量app仍然使用旧的开发规范,但用户无法抛弃其中的许多规范。所以App强行留在后台的行为,对用户是有实实在在的负面影响的。既然谷歌官方安卓做不到,那就只能由第三方安卓ROM来做了――哪个品牌的安卓不做,就会在用户中留下“热卡耗电”的坏名声。   

  

  所以OEM安卓杀后台,一个比一个狠。在国内,一些安卓rom甚至默认定时杀后台。即使RAM资源充足,大部分app也留不住后台进程。ROM咄咄逼人的杀后台氛围就这样诞生了。   

  

  为什么App要强行留在后台?安卓大举杀后台   

是“果”,而App以各种行径强行驻留后台则是“因”。而这一切的“根”又是什么?恐怕和安卓的生态环境有关。

  

和苹果不同,安卓最初并没有提供App统一推送机制,这意味着每个App如果需要接受后台消息,那就需要自行驻留进程,以随时接收消息推送。不过这些年Google也对此作了改进,引入了GCM/FCM机制,App可以调用Google服务框架GMS,通过Google的服务器实现统一的消息转发,App的消息推送可以由系统接管,整个过程App都无需保留后台,体验类似iOS。

  

安卓上的FCM机制,类似于iOS的统一消息推送,但前提是系统和App接入Google服务

  

然而,这一套机制并非是强制性的,如果App不接入GMS,甚至不上架Google Play,那么完全可以无视这一切。而在以国内为典型的应用环境下,GMS实际上并不可用,App自行驻留进程、接受消息推送就成为了必选项。

  

因此,国内的安卓App使用了尤其多的手段,在安卓系统中驻留进程,这实际上很大程度是不得已而为之,当然也有商业上的考虑。而针对国内App种种驻留后台的手段,国内的安卓ROM为了保证续航和流畅,又不得不采取了更多的一刀切杀后台手段,这就造成了现今的情况。

  

为什么Google要整治安卓ROM杀后台?安卓ROM整治了App后台驻留,带来了更好的续航和性能表现。然而对于用户而言,这并不是体验的全部。很多用户就遇到了这样的情况――使用某个App,例如音乐App听歌,切到后台一会儿,音乐就停了,因为系统把音乐App进程给杀了。但用户可不知道这是系统做的,只会认为这是音乐App的毛病。一时间,这音乐App就荣获差评。

  

Google在Play商店中观察到了不少这样的差评,而这显然不是开发者的错――在App驻留后台越来越卷的风气下,老老实实按照规范开发的App,反而后台更容易被系统强行中断,反映在用户实际体验上就是该App在后台好端端就没了,用户觉得这App肯定有Bug。

  

为了呼吁系统不要乱杀App后台,开发者们甚至还专门做了一个“求别杀我的App”的App

  

开发者无端背锅,而这问题显然又不是开发者能解决的。Google不得已亲自插手,来整治安卓ROM乱杀后台的现象。

  

目前Google正邀请第三方应用开发者提供反馈,想知道哪些手机品牌机型杀后台严重,以便进行更加深入的调查。

  

安卓厂商要如何应对?由于众所周知的原因,Google并不在国内展开账号相关的服务,国内的安卓生态是和Google脱节的。因此,对于Google的相关整治,应该对国内的安卓产品影响不大。

  

但是,也有不少国内安卓厂商开展海外业务,在海外市场,Google的话语权举足轻重。Google有可能对安卓厂商施加压力,以让安卓厂商改变系统的杀后台策略。在这样的背景下,国内外的机型分别采用不同的杀后台策略,就显得很有必要了。在用于国外机型的国际版ROM中,安卓厂商应该重视Google的意见,对杀后台策略进行一定程度的修改。

  

不过我们也要意识到,安卓ROM激进杀后台造成的负面体验,在国内也是存在的。但目前国内的安卓生态迫使安卓厂商出此下策,要如何改变现状?

  

统一推送联盟有望从根源上解决系统杀后台和App需要后台保持推送服务的矛盾

  

这两年,工信部联合了主流安卓厂商,共同推进统一推送联盟。App接入了相关体系后,即可实现系统级推送,无需驻留后台也可以接收消息。统一推送服务需要安卓ROM和App同时支持,好消息是,目前统一推送服务已经覆盖了华为、OPPO、vivo、小米等多家国内品牌,相关标准与成果也将纳入中国信通院与中国互联网协会共建的“中国移动基础服务平台”(China Mobile Service,CMS)的相关体系之中,并在2021年中国互联网大会上正式发布。希望统一推送联盟能一改国内App驻留后台的风气,让安卓ROM没有激进杀后台的理由吧。

  

总结总的来说,安卓ROM之所以如此激进杀后台,是和安卓App的行径息息相关的,而这一切的根源又是缺乏统一推送服务的安卓生态。随着国外Google对安卓掌控力的加强,以及国内统一推送服务的普及,情况有望得到改观,希望安卓ROM和App们未来能有更好的用户体验吧。

相关文章