一张图片使Android手机集体变砖,目前尚无解决方法

简介: 近日,一名网友在 Twitter 上传了一张壁纸并表示该壁纸会使他的三星手机崩溃。此前已经有日历 Bug 导致三星手机集体崩溃的事情发生,而这一次三星手机再次中招。只因为使用了一张风景壁纸就能导致手机崩溃?经该网友测试,不止是三星,包括谷歌亲儿子 Google Pixel 在内的众多手机品牌纷纷中招。

事件回顾

8月 31 日,一位名为“Ice universe”的网友在 Twitter 中上传了一张壁纸并表示:“警告!切勿将此图片设置为壁纸,尤其是三星手机用户!它会导致你的手机崩溃!千万不要尝试!”

图为“肇事”的壁纸,大家不要轻易尝试!


而后,该用户又发布了一条推文表示,不止是三星的手机,他的 Google Pixel 在更换为该壁纸之后也中招了。在他上传的视频中可以看到,将该图片设置为壁纸后,设备会崩溃,并不断在锁定屏幕上打开和关闭屏幕,且无法退出此循环,即使重启设备也会在开机后继续执行此循环。有网友测试,部分手机在崩溃后想要修复将十分棘手,Google Pixel 在安全模式下启动设备也无法修复,只能通过恢复出厂设置来使设备恢复正常,这样的话,手机中的全部数据都将会丢失。

崩溃的原因

这一问题没有影响到所有的 Android 设备,Android Authority 表示,他们测试时发现华为 Mate 20 pro 并没有出现这样的问题,目前已知会受到影响的手机品牌包括三星、Google Pixel、小米、一加和诺基亚。

那么问题究竟出在哪里?Android 开发人员 Dylan Roussel 在 Twitter 上分享了他寻找该问题原因的思路:


通过跟踪 SystemUI 崩溃的堆栈得知,这一问题发生在“ getHistogram”中。

在深入研究两个设备的 getHistogram 函数和调用 getHistogram 的函数之后,我注意到了一个问题:在使用 Android 11 系统的 Pixel 4 XL 上,函数 peekWallpaperBitmap 有一个新参数。

该参数将在某个时刻调用 ColorManagementProxy 的 doColorManagement 函数,用来检查设备是否支持图像的色彩空间。如果图像的色彩空间为 sRGB,则默认为支持;如果不支持,它会将图像的颜色空间替换为 sRGB,并记录其当前的颜色空间。

这就是它不会在使用 Android 11 系统的 Pixel 4 XL 上崩溃的原因。但是,在配备 Android 10 的 Pixel 3 XL 上尚未验证。这意味着如果将其设置为墙纸,则不支持色彩空间的图像可能会导致该设备崩溃。那么这张图片的色彩空间是什么?RGB。

简而言之就是这张壁纸图片使用了 RGB 色域标准,而 Android 10 优先选择 sRGB 标准,无法在第一时间将图片进行色域转换的设备就会出现问题,从而导致系统崩溃。

解决方式

Dylan 表示,目前没有很好的解决方法,只能通过更换壁纸或升级至 Android 11 来解决这一问题,可一旦设备中招,就无法更换壁纸。祸不单行,近日 Google 表示,原计划于 6 月 3 日发布的 Android 11 beta 版本将无限期推迟,也就是说目前仍无法进行 Android 11 的升级操作。


如果你的三星设备已经不幸中招,cnBeta 提供了两个临时解决办法:


手机关机,按电源键开机,在开机页面出现三星 LOGO 画面时,按住音量下键不松手,直至左下角显示“安全模式”字样,进入后手速要快,抓紧时间随便拍一张照片,并设置为壁纸。可能需要多次才能成功。

如果系统还未崩溃,快速下拉“设置”菜单,替换其他壁纸。同样要看手速。

一直以来,我们总会在网上看到一些稀奇古怪的“整蛊方法”:给使用 iPhone 的朋友发送一串字符,对方的设备就会崩溃。这样的故事主要发生在 iPhone 用户身上,而现在,Android 用户也难逃厄运,如果有朋友给你发来这样一张图片并让你设置成壁纸,请一定不要尝试。


现在都说互联网寒冬,其实只要自身技术能力够强,咱们就不怕!我这边专门针对Android开发工程师整理了一套【Android进阶学习视频】、【全套Android面试秘籍】、【Android知识点PDF】。如有需要获取资料文档的朋友,可以[点击我的GitHub]免费获取!


相关文章
|
3月前
|
网络协议 Android开发 数据安全/隐私保护
Android手机上使用Socks5全局代理-教程+软件
Android手机上使用Socks5全局代理-教程+软件
2298 2
|
26天前
|
数据处理 开发工具 数据安全/隐私保护
Android平台RTMP推送|轻量级RTSP服务|GB28181接入之文字、png图片水印的精进之路
本文探讨了Android平台上推流模块中添加文字与PNG水印的技术演进。自2015年起,为了满足应急指挥及安防领域的需求,逐步发展出三代水印技术:第一代为静态文字与图像水印;第二代实现了动态更新水印内容的能力,例如实时位置与时间信息;至第三代,则优化了数据传输效率,直接使用Bitmap对象传递水印数据至JNI层,减少了内存拷贝次数。这些迭代不仅提升了用户体验和技术效率,也体现了开发者追求极致与不断创新的精神。
|
30天前
|
自然语言处理 定位技术 API
Android经典实战之如何获取图片的经纬度以及如何根据经纬度获取对应的地点名称
本文介绍如何在Android中从图片提取地理位置信息并转换为地址。首先利用`ExifInterface`获取图片内的经纬度,然后通过`Geocoder`将经纬度转为地址。注意操作需在子线程进行且考虑多语言支持。
91 4
|
14天前
|
Android开发
【Azure 环境】记录使用Notification Hub,安卓手机收不到Push通知时的错误,Error_Code 30602 or 30608
【Azure 环境】记录使用Notification Hub,安卓手机收不到Push通知时的错误,Error_Code 30602 or 30608
|
2月前
|
存储 移动开发 Android开发
使用kotlin Jetpack Compose框架开发安卓app, webview中h5如何访问手机存储上传文件
在Kotlin和Jetpack Compose中,集成WebView以支持HTML5页面访问手机存储及上传音频文件涉及关键步骤:1) 添加`READ_EXTERNAL_STORAGE`和`WRITE_EXTERNAL_STORAGE`权限,考虑Android 11的分区存储;2) 配置WebView允许JavaScript和文件访问,启用`javaScriptEnabled`、`allowFileAccess`等设置;3) HTML5页面使用`<input type="file">`让用户选择文件,利用File API;
|
1月前
|
XML 前端开发 Android开发
Android经典实战之Kotlin中实现圆角图片和圆形图片
本文介绍两种实现圆角图像视图的方法。第一种是通过自定义Kotlin `AppCompatImageView`,重写`onDraw`方法使用`Canvas`和`Path`进行圆角剪裁。第二种利用Android Material库中的`ShapeableImageView`,简单配置即可实现圆角效果。两种方法均易于实现且提供动态调整圆角半径的功能。
24 0
|
1月前
|
Java Android开发 UED
安卓scheme_url调端:如果手机上多个app都注册了 http或者https 的 intent。 调端的时候,调起哪个app呢?
当多个Android应用注册了相同的URL Scheme(如http或https)时,系统会在尝试打开这类链接时展示一个选择对话框,让用户挑选偏好应用。若用户选择“始终”使用某个应用,则后续相同链接将直接由该应用处理,无需再次选择。本文以App A与App B为例,展示了如何在`AndroidManifest.xml`中配置对http与https的支持,并提供了从其他应用发起调用的示例代码。此外,还讨论了如何在系统设置中管理这些默认应用选择,以及建议开发者为避免冲突应注册更独特的Scheme。
|
2月前
|
前端开发 小程序
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
【微信小程序-原生开发】实用教程20 - 生成海报(实战范例为生成活动海报,内含生成指定页面的小程序二维码,保存图片到手机,canvas 系列教程)
196 0
|
3月前
|
JSON 编解码 Apache
Android中使用HttpURLConnection实现GET POST JSON数据与下载图片
Android中使用HttpURLConnection实现GET POST JSON数据与下载图片
39 1
|
3月前
|
前端开发 JavaScript Android开发
手机APP开发|基于安卓APP实现掌上党支部——党员app
手机APP开发|基于安卓APP实现掌上党支部——党员app