【问题标题】:Logs and performance, Android (SurfaceView)日志和性能,Android (SurfaceView)
【发布时间】:2017-01-12 23:30:55
【问题描述】:

我已经创建了一个游戏,并且游戏循环的每个滴答都会出现此日志

09-05 07:53:20.213 27150-27240/com.x.y I/SurfaceView:锁定 画布...停止=假, win=android.view.SurfaceView$MyWindow@32beabb4 09-05 07:53:20.226 27150-27240/com.x.y I/SurfaceView:退回的画布: android.view.Surface$CompatibleCanvas@34b823dd

如何防止出现此日志?我担心它会影响性能。

【问题讨论】:

    标签: android performance surfaceview


    【解决方案1】:

    解决方案

    到目前为止,我发现的唯一解决方案是一个丑陋的 hack:

    private void disableSurfaceViewLogging() {
        try {
            Field field = SurfaceView.class.getDeclaredField("DEBUG");
            field.setAccessible(true);
            field.set(null, false);
            Log.i(TAG, "SurfaceView debug disabled");
        } catch (Exception e) {
            Log.e(TAG, "while trying to disable debug in SurfaceView", e);
        }
    }
    

    说明

    SurfaceView 有一个常量 DEBUG 用于切换日志记录。不知何故这是真的(当你查看code 你会发现它应该是假的)。我找不到任何其他更“合适”的方式。

    我依赖以下答案:

    【讨论】:

      猜你喜欢
      • 2018-10-19
      • 1970-01-01
      • 2015-02-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多