ANativeActivityCallbacks
这些是框架向原生应用发出的回调。
摘要
所有这些回调都在应用的主线程上发生。默认情况下,所有回调都为 NULL;将其设置为指向您自己的函数指针即可调用该函数。
公共属性 |
|
---|---|
onConfigurationChanged)(ANativeActivity *activity)
|
void(*
当前设备的 AConfiguration 已更改。
|
onContentRectChanged)(ANativeActivity *activity, const ARect *rect)
|
void(*
应放置内容的窗口矩形已更改。
|
onDestroy)(ANativeActivity *activity)
|
void(*
NativeActivity 正在被销毁。
|
onInputQueueCreated)(ANativeActivity *activity, AInputQueue *queue)
|
void(*
此原生 Activity 窗口的输入队列已创建。
|
onInputQueueDestroyed)(ANativeActivity *activity, AInputQueue *queue)
|
void(*
此原生 Activity 窗口的输入队列正在被销毁。
|
onLowMemory)(ANativeActivity *activity)
|
void(*
系统内存不足。
|
onNativeWindowCreated)(ANativeActivity *activity, ANativeWindow *window)
|
void(*
此原生 Activity 的绘图窗口已创建。
|
onNativeWindowDestroyed)(ANativeActivity *activity, ANativeWindow *window)
|
void(*
此原生 Activity 的绘图窗口即将被销毁。
|
onNativeWindowRedrawNeeded)(ANativeActivity *activity, ANativeWindow *window)
|
void(*
此原生 Activity 的绘图窗口需要重新绘制。
|
onNativeWindowResized)(ANativeActivity *activity, ANativeWindow *window)
|
void(*
此原生 Activity 的绘图窗口已调整大小。
|
onPause)(ANativeActivity *activity)
|
void(*
NativeActivity 已暂停。
|
onResume)(ANativeActivity *activity)
|
void(*
NativeActivity 已恢复。
|
onSaveInstanceState)(ANativeActivity *activity, size_t *outSize)
|
void *(*
框架要求 NativeActivity 保存其当前实例状态。
|
onStart)(ANativeActivity *activity)
|
void(*
NativeActivity 已启动。
|
onStop)(ANativeActivity *activity)
|
void(*
NativeActivity 已停止。
|
onWindowFocusChanged)(ANativeActivity *activity, int hasFocus)
|
void(*
此 NativeActivity 窗口的焦点已更改。
|
公共属性
onConfigurationChanged
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onConfigurationChanged)(ANativeActivity *activity)
当前设备的 AConfiguration 已更改。
新配置可以从 assetManager 中检索。
onContentRectChanged
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onContentRectChanged)(ANativeActivity *activity, const ARect *rect)
应放置内容的窗口矩形已更改。
onDestroy
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onDestroy)(ANativeActivity *activity)
NativeActivity 正在被销毁。
有关更多信息,请参阅 Activity.onDestroy() 的 Java 文档。
onInputQueueCreated
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onInputQueueCreated)(ANativeActivity *activity, AInputQueue *queue)
此原生 Activity 窗口的输入队列已创建。
您可以使用给定的输入队列开始检索输入事件。
onInputQueueDestroyed
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onInputQueueDestroyed)(ANativeActivity *activity, AInputQueue *queue)
此原生 Activity 窗口的输入队列正在被销毁。
从此函数返回后,您不应再尝试引用此对象。
onLowMemory
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onLowMemory)(ANativeActivity *activity)
系统内存不足。
使用此回调释放您不需要的资源,以帮助系统避免终止更重要的进程。
onNativeWindowCreated
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onNativeWindowCreated)(ANativeActivity *activity, ANativeWindow *window)
此原生 Activity 的绘图窗口已创建。
您可以使用给定的原生窗口对象开始绘图。
onNativeWindowDestroyed
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onNativeWindowDestroyed)(ANativeActivity *activity, ANativeWindow *window)
此原生 Activity 的绘图窗口即将被销毁。
从此函数返回后,您必须确保不再触及窗口对象:在从另一个线程向窗口绘图的常见情况下,这意味着此回调的实现必须与另一个线程进行适当同步,以在其绘图停止后再从此处返回。
onNativeWindowRedrawNeeded
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onNativeWindowRedrawNeeded)(ANativeActivity *activity, ANativeWindow *window)
此原生 Activity 的绘图窗口需要重新绘制。
为避免屏幕更改(例如旋转后调整大小)期间出现瞬时伪影,应用应在完成其窗口在当前状态下的绘图之前不从此函数返回。
onNativeWindowResized
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onNativeWindowResized)(ANativeActivity *activity, ANativeWindow *window)
此原生 Activity 的绘图窗口已调整大小。
您应该从窗口中检索新的大小,并确保您在其中的渲染现在与它匹配。
onPause
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onPause)(ANativeActivity *activity)
NativeActivity 已暂停。
有关更多信息,请参阅 Activity.onPause() 的 Java 文档。
onResume
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onResume)(ANativeActivity *activity)
NativeActivity 已恢复。
有关更多信息,请参阅 Activity.onResume() 的 Java 文档。
onSaveInstanceState
Declared inandroid/native_activity.h
void *(* ANativeActivityCallbacks::onSaveInstanceState)(ANativeActivity *activity, size_t *outSize)
框架要求 NativeActivity 保存其当前实例状态。
有关更多信息,请参阅 Activity.onSaveInstanceState() 的 Java 文档。返回的指针需要使用 malloc() 创建;框架将为您调用 free()。您还必须使用分配的字节数填充 outSize。请注意,保存的状态将持久化,因此不能包含任何活动实体(内存指针、文件描述符等)。
onStart
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onStart)(ANativeActivity *activity)
NativeActivity 已启动。
有关更多信息,请参阅 Activity.onStart() 的 Java 文档。
onStop
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onStop)(ANativeActivity *activity)
NativeActivity 已停止。
有关更多信息,请参阅 Activity.onStop() 的 Java 文档。
onWindowFocusChanged
Declared inandroid/native_activity.h
void(* ANativeActivityCallbacks::onWindowFocusChanged)(ANativeActivity *activity, int hasFocus)
此 NativeActivity 窗口的焦点已更改。
这通常用于例如当游戏失去输入焦点时暂停游戏。