在过去 2 天里,我有 2 位用户报告说他们的手机死机并且一直没有响应,直到在同一时间使用我的应用程序执行恢复出厂设置。我发现其他类似的应用程序也会出现这种情况,并且相信报告是可信的,但没有任何其他解决方案或讨论。 (Android 9.0 SDK 28 上的谷歌和一加)
它们都描述了即使在安全模式下仍然存在的空白、黑色和无响应的锁屏。在此“卡住”状态下,只有电源按钮和电源菜单有效。两个用户都没有 root,使用相同的设置,并使用默认的 Android 启动器。
根据他们的报告,在使用过程中发生的唯一“危险”事情是:
WallpaperManager wallpaperManager = WallpaperManager.getInstance(context);
wallpaperManager.setBitmap(bmp, null, false, WallpaperManager.FLAG_SYSTEM);
这在 AsyncTask 中运行,除了上面的内容之外没有做任何特别的事情。我预计这是一个异常现象,因为它似乎只在几千名用户中被报告过两次,但它令人担忧。我不确定这是 Bitmap
泄漏、SystemUI 还是 Android 本身的问题。
最佳答案
是的。 setBitmap() 很危险,图像可能太大。如果您让用户设置自己的壁纸,请检查图像尺寸并调整大小。
关于java - Android WallpaperManager 方法 "soft-bricking"用户的手机并导致设备无响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54838290/