获取 ANativeWindow_lock 个错误代码的描述

Get a description of ANativeWindow_lock error codes

我有一个 Android APP 使用 Android NDK 和一个 ANativeWindow。有时,应用程序挂起并且我的日志显示:

unable to lock window buffer (error code: -38)

或者

unable to lock window buffer (error code: -19)

如果我按下电源按钮锁定设备并再次解锁,这个问题就会消失。该应用程序 returns 开始运行正常。

问题是,我试图搜索 ANativeWindow_lock 返回的错误代码列表以查找此错误的含义,但我找到了 none。

如何找到这些错误代码的描述?

提前致谢, 卡洛斯·桑托斯

我相信这些是 INVALID_OPERATIONNO_INIT

您可以找到 Android 框架通常在内部使用的错误代码 here

如您所见,其中许多错误代码被定义为 errno.h 错误代码的负数。这些错误代码可以在here (first 34) and here(其余)中找到。

因此,如果您查找值 19,您会看到它是 ENODEV。而设置为-ENODEV(即-19)的Android错误码为NO_INIT.