为什么手机微信总频繁唤醒,微信bug反馈
关闭手机电源,或者退出微信,微信都会被“杀死”,再次打开后重启。
如果此时正在查看资料,或者聊天,则之前看的资料可能再也看不到,聊天也要重新打开,体验很不好,而支付宝体系的部分软件并没有类似的问题。
于是可以不少人推测,是微信IOS版的BUG,而且微信也公开消息称已经关注该事件,并在努力解决问题。
但指尖科技说咨询了资深IOS开发工程
前几天苹果系统发布了最新的13.2版本后,微信被爆在后台频繁“唤醒”达几万次,由于次数太多,导致被苹果系统“杀死”。
关闭手机电源,或者退出微信,微信都会被“杀死”,再次打开后重启。
如果此时正在查看资料,或者聊天,则之前看的资料可能再也看不到,聊天也要重新打开,体验很不好,而支付宝体系的部分软件并没有类似的问题。
于是可以不少人推测,是微信IOS版的BUG,而且微信也公开消息称已经关注该事件,并在努力解决问题。
但指尖科技说咨询了资深IOS开发工程师,发现这次的问题可能不是这么简单。
“频繁唤醒”原本就是一种解决方案首先,微信后台被多次“唤醒”,实际上并非APP的唤醒,而是微信后台进程的唤醒。
一般用APP时,如果关闭屏幕,或者进入另外一个APP,苹果系统会把APP所有进程停下来。
但有时候,APP不能完全停下来,例如APP需要持续获取用户定位,计算行走路线等,微信完全停下来,那画的路线就断了。
这个时候,如果APP还想继续运行这些功能,则需要开启一个后台进程。
然而,苹果为了系统稳定起见,不会允许这些后台进程一直运行,一定程度上会杀死这些后台进程,也就是“杀后台”。
于是就有了一个非常有趣的方案:
后台进程在检测到自己将要被苹果系统杀死的时,会打开一个新的进程。
所谓“唤醒”,实际上就是打开一个新的进程,继续进行上一个被杀死进程的功能。
而如果苹果系统频繁杀死后台进程,后台进程就会频繁打开新进程,于是就会出现网友看到的“频繁唤醒”的现象。
也就是说,“频繁唤醒”本来就是APP面对苹果系统“杀后台”特性的解决方案。
可能是苹果系统更新导致实际上,“频繁唤醒”并非任何情况下都有效,进入后台的APP有时候还是会被“彻底杀死”,再次打开就会重新打开APP。
在旧版本的苹果系统中,其实一直有APP被“彻底杀死”的现象,只是没有13.2版本这么快。
苹果很可能增加了“杀后台”和“彻底杀后台”的概率。
实际上,苹果更新到13.2版本后,包括微信的大部分app很可能都没有想到苹果系统会增加“彻底杀后台”的概率,所以仍然使用之前的“频繁唤醒”的解决方案,导致如今的问题。
从这个角度来看,很可能是苹果系统更新后,并没有告知开发者后台“频繁唤醒”方案已经不好用导致。
支付宝为什么没事?实际上支付宝体系的APP,应该也存在类似问题,但是可能没有微信这么严重。
不过,从开发者的角度来看,支付宝的现象应该也说明,除了微信的“频繁唤醒”方案之外,可能还有其他解决方案,或者缓解方案。
另外资深技术人员认为,从技术角度来看,由于微信功能非常丰富,微信要单独解决这个问题,可能要排查所有后台功能,工作量应该很大,估计没这么快完成。
不过目前该问题应该还不是使用微信的致命问题,对用户的影响应该是有限的。
微信被频繁“杀后台”,真的是BUG吗?
最新的13.2版苹果系统日前发布后,微信在后台频繁被“唤醒”数万次,结果因次数过多被苹果系统“杀死”。关掉手机的电源,或者退出微信。微信将被“杀掉”。再次打开并重新启动。如果您正在检查数据或聊天,您将永远看不到以前看到的信息,您将不得不重新打开聊天。经验非常糟糕,支付宝系统的一些软件也没有类似的问题。
因此,很多人猜测这是微信IOS版的bug,微信也公开表示关注这一事件,并试图解决问题。首先,微信背景已经被多次“唤醒”。其实,并不是应用程序的唤醒,而是微信后台进程的唤醒。一般来说,在使用某个应用程序时,如果关闭屏幕或输入另一个应用程序,苹果系统将停止该应用程序的所有进程。
但有时,应用程序无法完全停止。例如,应用程序需要不断获取用户的位置,计算步行路线等,如果微信完全停止,绘制的路线将被打断。此时,如果应用程序要继续运行这些功能,则需要启动后台进程。然而,为了系统的稳定性,苹果不会允许这些后台进程一直运行。在某种程度上,它会扼杀这些后台进程,即“扼杀后台”。
所以有一个非常有趣的解决方案:当后台进程检测到它将被苹果系统杀死时,它将打开一个新进程。所谓“唤醒”实际上是打开一个新进程,并继续执行最后一个被杀死进程的功能。
文章评论