Cocos2d-x 3.0的启动流程

    Cocos2d-x 3.0变动非常大,包含启动的方式,我看了下对android的启动总结例如以下:


    Java方面:


    AppActivity继承Cocos2dxActivity
    Cocos2dxActivity的onCreate函数中载入本地.so
    载入.so的时候会统一到javaactivity.cpp里面寻找JNI_OnLoad等本地接口,来执行本地文件
   当中Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit会cocos2d::Application::getInstance()->run();来运行游戏開始。



   C++方面:
      main.cpp中仅仅负责创建Application实例,从而在上面cocos2d::Application::getInstance()->run();的时候能够执行

      AppDelegate 继承 Application 
      在Application中的run函数中运行applicationDidFinishLaunching

之前2.版本号的时候是直接在main.cpp里面实现javaactivity.cpp的内容,3.0后统一封装到javaactivity.cpp里面了。

其它平台还是在main.cpp里面实现的

如今的疑问是怎么call到Java_org_cocos2dx_lib_Cocos2dxRenderer_nativeInit的??

今天也是好奇看了下。不正确的地方请大家指正!

原文地址:https://www.cnblogs.com/yangykaifa/p/7224204.html