Dol*_*naj 45 android logcat kotlin android-jetpack-compose
我最近开始使用 Kotlin 和 Jetpack Compose 构建我的第一个应用程序。到目前为止,我还没有在 Logcat 中看到这个错误,由于我缺乏经验,我很困惑!我正在清理代码,将函数提取到其他类文件,清理我制作的可组合项之一的 UI,现在我得到了 BLASTBufferQueue 的常量 Logcat 条目,其中包含以下条目:
14:03:10.687 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.687 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.704 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.704 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.722 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.722 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
14:03:10.738 E [VRI[MainActivity]#0](f:0,a:3) Faking releaseBufferCallback from transactionCompleteCallback
Run Code Online (Sandbox Code Playgroud)
似乎每次重组都会发生这种情况,但我不知道我改变了什么导致它。
这段代码有关系吗?
使用模拟器时这似乎不是问题,目前是可调整大小的 API 33。
但在物理设备(Pixel 7 Pro)上使用时确实会出现。
现在,在物理设备上,自从我上次开发应用程序以来,我确实使用 12 月更新(内部版本号:TQ1A.221205.011)对其进行了更新。更新后是否发生了某些变化导致出现这些 Logcat 条目?
Gow*_*K K 34
以下是我得到的与此问题相关的一些发现。
我相信这一定会发生在 Android S 及更高版本中,并且在 2022 年 12 月更新之后也会发生。这
BlastBufferQueue是一种消息队列,应用程序布局窗口的几何形状发生变化,它将被提交到 Android 平台的表面渲染器。多个应用程序发送的缓冲区将被同步。
在 Android S 之前,更改将通过Transaction. 这里,当从多个应用程序进程发送缓冲区时,缓冲区不同步。
此 BlastBufferQueue 有助于打开从多个应用程序进程发送的缓冲区之间的连接。
了解更多烧烤相关知识的链接:
https://www.jianshu.com/p/50a30fa6952e
https://www.jianshu.com/p/cdc60627df90
这是下面的代码,其中blastbuffer正在从中获取更新ViewRootImpl。
这是对视图事务更新但缓冲区回调从未释放(在某些情况下)时发生 ANR 的问题的修复。TransactionCompleteCallback因此,此提交是在完成时假装释放缓冲区回调的解决方法。
在此提交中,有人提到这是一个安全的解决方法。提交中链接的根本问题是私有的。这是 Android 团队添加了假释放缓冲区回调的提交更改。这就是您可能会收到此日志的原因。
最后总结一下,这个日志可以安全地忽略。
编辑: 我看到有些人由于某些溢出而发生致命崩溃。我们必须等待Greg 提出的问题得到解决。暂时,可以在 Logcat 窗口中使日志保持静默。请参阅问题下的评论。
| 归档时间: |
|
| 查看次数: |
13293 次 |
| 最近记录: |