表面:: setbuffersDimensions日志被垃圾邮件

问题描述 投票:15回答:3

我已经建立了一个Android应用程序工作正常,所以与平板电脑预计:宏碁。 7英寸API 21。

我最近买了一个新的平板电脑:宏碁。 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
3个回答
8
投票

这些日志来当我们的EditText与光标,而光标闪烁负责重绘屏幕。

表面:: setBuffersDimensions(这= 0x7f4ccc7c00,W = 1080,H = 1920) d / OpenGLRenderer:的WorkerThread 0x7f7c07f000运行

当我做

android:cursorVisible="false"

这些日志都不见了。

因此,当工作室屏幕成为垃圾邮件,且这些日志,它为开发者一个警告,检查UI绘制图案。


4
投票

此日志意味着你的屏幕上的内容正在被重新绘制。 它只能显示在几个设备,而且无论你正在使用的设备,您可以启用“硬件层更新”或开发者选项“GPU视图更新”,你会看到闪过区,目前正在重绘。 此外,如果一个设备上存在的问题,很可能是它存在于他人了。


0
投票

如果任何人发现这个问题,请确保你没有像一个进度条或让你不从的WebView加载完成后呈现停止。在Xamarin.Android,我不得不重写OnPageFinished,从WebViewClient,并设置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;
        }

    }
© www.soinside.com 2019 - 2024. All rights reserved.