这是在 android_native_app_glue.h 中找到的枚举
enum {
APP_CMD_INPUT_CHANGED,
APP_CMD_INIT_WINDOW,
APP_CMD_TERM_WINDOW,
APP_CMD_WINDOW_RESIZED,
APP_CMD_WINDOW_REDRAW_NEEDED,
APP_CMD_CONTENT_RECT_CHANGED,
APP_CMD_GAINED_FOCUS,
APP_CMD_LOST_FOCUS,
APP_CMD_CONFIG_CHANGED,
APP_CMD_LOW_MEMORY,
APP_CMD_START,
APP_CMD_RESUME,
APP_CMD_SAVE_STATE,
APP_CMD_PAUSE,
APP_CMD_STOP,
APP_CMD_DESTROY,
};
APP_CMD_INPUT_CHANGED - 来自主线程的命令:AInputQueue 已更改。处理此命令后,android_app->inputQueue 将更新为新队列(或 NULL)。
APP_CMD_INIT_WINDOW - 来自主线程的命令:一个新的 ANativeWindow 已准备好使用。收到此命令后,android_app->window 将包含新的窗口表面。
APP_CMD_TERM_WINDOW - 来自主线程的命令:需要终止现有的 ANativeWindow。收到此命令后,android_app->window 仍然包含现有窗口;调用 android_app_exec_cmd 后,它将被设置为 NULL。
APP_CMD_WINDOW_RESIZED - 来自主线程的命令:当前 ANativeWindow 已调整大小。请用它的新尺寸重新绘制。
APP_CMD_WINDOW_REDRAW_NEEDED - 来自主线程的命令:系统需要重绘当前的 ANativeWindow。您应该在将其交给 android_app_exec_cmd() 之前重绘窗口,以避免暂时的绘图故障。
APP_CMD_CONTENT_RECT_CHANGED - 来自主线程的命令:窗口的内容区域已更改,例如显示或隐藏软输入窗口。您可以在 android_app::contentRect 中找到新的内容矩形。
APP_CMD_GAINED_FOCUS - 来自主线程的命令:应用程序的活动窗口已获得输入焦点。
APP_CMD_LOST_FOCUS - 来自主线程的命令:应用程序的活动窗口失去了输入焦点。
APP_CMD_CONFIG_CHANGED - 来自主线程的命令:当前设备配置已更改。
APP_CMD_LOW_MEMORY - 来自主线程的命令:系统内存不足。尽量减少内存使用。
APP_CMD_START - 来自主线程的命令:应用程序的活动已启动。
APP_CMD_RESUME - 来自主线程的命令:应用程序的活动已恢复。
APP_CMD_SAVE_STATE - 来自主线程的命令:应用程序应该为自己生成一个新的保存状态,如果需要可以从以后恢复。如果你有保存状态,用 malloc 分配它并将它放在 android_app.savedState 中,大小在 android_app.savedStateSize 中。稍后将为您释放。
APP_CMD_PAUSE - 来自主线程的命令:应用程序的活动已暂停。
APP_CMD_STOP - 来自主线程的命令:应用程序的活动已停止。
APP_CMD_DESTROY - 来自主线程的命令:应用程序的活动正在被销毁,并等待应用程序线程清理并退出,然后再继续。