【问题标题】:Surface::setbuffersDimensions Log being spammedSurface::setbuffersDimensions 日志被垃圾邮件
【发布时间】:2016-04-13 00:27:26
【问题描述】:

我已经构建了一个 Android 应用程序,该应用程序在平板电脑上运行良好且符合预期:Acer。 7 英寸 API 21。

我最近买了一款新平板电脑:Acer。 10 英寸 API 22。

现在我的日志被这行垃圾填满了。

04-12 18:23:27.371 8776-9082/com.callbell.callbell D/Surface: Surface::setBuffersDimensions(this=0x7f9aa44000,w=800,h=1280)

屏幕会随机冻结并变为空白。我没有在日志中看到任何错误,我能找到的对这个日志行的唯一参考是这里

https://android.googlesource.com/platform/frameworks/native/+/fe94bd262bc0a33d709aee8fb70c1369656b479b/libs/gui/Surface.cpp

更新 我已经在一些设备上进行了尝试,取得了不同程度的成功。

没有问题:

三星 Galaxy Tab 7"

三星 Galaxy Tab 10"

宏碁 Iconia 8"

问题:

宏碁 Iconia 10"

【问题讨论】:

    标签: android android-debug


    【解决方案1】:

    当我们有带有光标的 EditText 时,这些日志就会出现,并且光标闪烁负责重绘屏幕。

    Surface::setBuffersDimensions(this=0x7f4ccc7c00,w=1080,h=1920)
    D/OpenGLRenderer: WorkerThread 0x7f7c07f000 正在运行

    当我这样做时

    android:cursorVisible="false"
    

    这些日志不见了。

    因此,当工作室屏幕因这些日志成为垃圾邮件时,它会提醒开发人员检查 UI 绘制模式。

    【讨论】:

    • 在我的设备上 Doogee X5 动画进度条也会导致此垃圾邮件
    【解决方案2】:

    此日志表示您屏幕上的某些内容正在被重绘。
    它仅在少数设备上显示,但无论您使用什么设备,您都可以在开发人员选项中启用“硬件层更新”或“gpu 视图更新”,您会看到正在重绘的闪烁区域。
    此外,如果问题存在于一台设备上,则很可能也存在于其他设备上。

    【讨论】:

      【解决方案3】:

      如果其他人发现此问题,请确保您没有 ProgressBar 之类的东西,或者确保您在 WebView 完成加载后不会停止渲染。 在 Xamarin.Android 中,我必须从 WebViewClient 覆盖 OnPageFinished,并设置 progressBar.Visibility = ViewStates.Gone;。那里还有一个指向 GitHub 存储库(不是我的)的链接,该存储库具有其他一些 WebViewClient 覆盖实现:

              public class MyWebViewClient : WebViewClient
          {
              public override bool ShouldOverrideUrlLoading(WebView view, string url)
              {
                  view.LoadUrl(url);
                  return false;
              }
      
              //More overrides: https://github.com/xamarin/monodroid-samples/blob/master/MonoIO/UI/MapFragment.cs
              public override void OnPageFinished(WebView view, string url)
              {
                  base.OnPageFinished(view, url);
                  progressBar.Visibility = ViewStates.Gone;
                  view.Visibility = ViewStates.Visible;
              }
      
          }
      

      【讨论】:

        猜你喜欢
        • 2019-02-20
        • 2018-07-12
        • 2016-02-25
        • 2016-01-10
        • 2018-04-08
        • 1970-01-01
        • 1970-01-01
        • 2011-10-08
        • 1970-01-01
        相关资源
        最近更新 更多