在微信中发“两位数字+15个句号”(另外一说法是任意数字,任意15个标点符号),若是有非小米三星的安卓手机收到,就会卡死,这个BUG的原理是怎样的?
没有加号,如直接发“15。。。。。。。。。。。。。。。”就行。java
有人 v2 发了如下内容:
正则表达式
@口贝力:微信
@kbkaa :华为已卡死,看了下logcat
和traces.txt
,是这个java.util.regex.Matcher.findNextImpl(Native method)
的锅,好像是正则匹配的问题,估计是把匹配操做放在UI主线程里了,处理超时致使ANR。多是字符解析超时 5s 就会崩溃。
具体分析请看:为何“15。。。”会致使微信ANR? - 掘金post
下面这段字符为何会让手机QQ未响应?测试
Y.oo.O.oo.z.oo.yY.oo.0.oo.z.oo.0.oo.0.oo.y.oo.z.oo.Z.oo.Z.oo.Y.oo.O.oo.Y.oo.Y.oo.Z.oo.y.oo.O.oo.o.oo.Y.oo.z.oo.y.oo.Y.oo.y.oo.y.oo.Y.oo.o.oo.0.oo.Z.oo.O.oo.o.oo.Y.oo.0.oo.0.oo.y.oo.O.oo.0.oo.Z.oo.z.oo.Y.oo.Y.oo.y.oo.Y.oo.Y.oo.z.oo.Y.oo.Y.oo.Y.oo.0.oo.O.oo.z.oo.y.oo.O.oo.O.oo.0.oo.Y.oo.Y.oo.0.oo.0.oo.o.oo.Z.oo.yY.oo.y.oo.0.oo.o.oo.yY.oo.y.oo.z.oo.0.oo.o.oo.Z.oo.yY.oo.0.oo.yY.oo.yY.oo.o.oo.Y.oo.Y.oo.0.oo.0.oo.Y.oo.z.oo.z.oo.o.oo.yY.oo.o.oo.o.oo.Y.oo.0.oo.z.oo.0.oo.o.oo.Y.oo.O.oo.0.oo.0.oo.y.oo.0.oo.Y.oo.Y.oo.Z.oo.0.oo.0.oo.z.oo.yY.oo.O.oo.o.oo.Y.oo.o.oo.Y.oo.Z.oo.z.oo.y.oo.yY.oo.0.oo.O.oo.Y.oo.O.oo.y.oo.o.oo.yY.oo.Y.oo.o.oo.Z.oo.O.oo.Z.oo.z.oo.Y.oo.y.oo.yY.oo.yY.oo.Y.oo.z.oo.o.oo.yY.oo.O.oo.Y.oo.O.oo.O.oo.O.oo.O.oo.Y.oo. url
(篇幅有限,测试时能够将这段字符多复制几遍)
——————————————
手机QQ上显示到有这段字符的消息时会卡死并致使程序崩溃,Android版和iOS版QQ都会受到影响。 线程
这串代码形成手机QQ卡死的缘由是是判断 url 的正则表达式执行时间过长致使的,安卓和苹果都会卡顿一段时间。code
临时解决办法:cdn
目测是微信官方人员.....
blog
有人说已经修复完成,不知道有没有挂的人了.....微信的热修复仍是牛逼啊!(可是不断有人反馈挂了,等微信官方发布吧)
在微信群发相关内容被屏蔽
小米:20。。。。。。。。。。。。。。。。。。。。 仍是会炸...(小米6不会)
魅族:仍是挂...
今天17:00起,手机微信开启时显示的地球图片将从之前的美国卫星成像图换成风云四号的成像图。9月25日至9月28日期间,用户在微信启动时,能够欣赏到由我国新一代静止轨道气象卫星“风云四号”从太空拍摄的祖国全景。这是6年来微信启动页面首次发生变化,启动页背景中的地球图片也由非洲大陆上空视角,变化为了咱们的祖国上空。