最近2天,我有2位用户报告说他们的手机在同一时间崩溃了,并且在使用我的应用程序执行出厂还原之前一直没有响应。我发现这种情况发生在其他类似的应用程序中,并且相信报告是可信的,但是在任何地方都没有其他解决方案或讨论。 (Android 9.0 SDK 28上的Google和OnePlus)

它们都描述了一个空白,黑色且无响应的锁定屏幕,即使在安全模式下也仍然存在。在此“卡住”状态下,只有电源按钮和电源菜单有效。这两个用户都是无根用户,使用相同的设置,并使用默认的Android启动器。

根据他们的报告,在使用过程中发生的唯一“危险”事件是:

WallpaperManager wallpaperManager = WallpaperManager.getInstance(context);

wallpaperManager.setBitmap(bmp, null, false, WallpaperManager.FLAG_SYSTEM);


它在AsyncTask中运行,除上述功能外没有其他特殊功能。我希望这是一个异常,因为它似乎仅在数千名用户中被报告过两次,但这令人担忧。我不确定这是Bitmap泄漏,SystemUI还是Android本身的问题。

最佳答案

是的setBitmap()很危险,图像可能太大。如果让用户设置自己的墙纸,请检查图像尺寸并调整大小。

关于java - Android WallpaperManager方法“软砖墙”用户的手机并导致设备无响应,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54838290/

10-08 21:21