Вызывать android_main(struct android_app* state) вручную?
Я использую PowerVR SDK, чтобы рисовать 3D-модели поверх моей камеры, которая создается с помощью движка Vuforia.
весь код powervr полностью нативный и вызывается android_app_glue. Чтобы начать рендеринг, вызывается android_main (struct android_app * state). Я хочу сам вызывать эту функцию из одной из своих родных функций вместо того, чтобы вызывать ее при создании какой-то NativeActivity.
1 ответ
Жизненный цикл активности Android осуществляется на Java, и android_main
(В отличие от main
в Linux/OS X/Windows) не вызывается операционной системой, а вызывается Native App Glue, который состоит из android.app.NativeActivity
на Яве и android_native_app_glue.c
в основной библиотеке и передает события в отдельный поток в вашей собственной библиотеке.
Клей предоставляется только для удобства, вы можете вообще не использовать клей и самостоятельно изменять функциональность, или вы можете модифицировать / расширить клей.
Итак, если вы хотите использовать клей, вы можете удалить android_main
позвонить с android_native_app_glue.c
, но убедитесь, что клей инициализирован правильно, прежде чем сделать свой собственный вызов android_main
,