我正在使用 powervr sdk 在使用 vuforia 引擎创建的相机 View 之上绘制 3d 模型。
整个 powervr 代码是完全原生的,由 android_app_glue 调用。要开始渲染,调用 android_main(struct android_app* state)。我想从我的一个 native 函数中自己调用此函数,而不是在某些 NativeActivity 的 onCreate 中调用它。
最佳答案
Android Activity 生命周期是在 Java 中完成的,android_main
(不同于 Linux/OS X/Windows 上的 main
)不被操作系统调用,而是被调用通过 Native App Glue,它由 Java 中的 android.app.NativeActivity
和主库中的 android_native_app_glue.c
组成,并将事件代理到本地库中的单独线程.
提供胶水只是为了方便,您可以完全不使用胶水并自行重新实现功能,也可以修改/扩展胶水。
所以,如果你想使用胶水,你可以从 android_native_app_glue.c
中删除 android_main
调用,但确保在你制作你的胶水之前正确初始化胶水自己调用 android_main
。
关于android - 手动调用 android_main(struct android_app* state)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21699604/