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的??

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

更多相关文章

  1. Android加载长图滑动显示
  2. Android(安卓)各种Loading 炫酷View
  3. Android启动器(Launcher)开发详解
  4. 使用javah和javap得到JNI接口的签名
  5. Android(安卓)Fragment学习笔记(一)
  6. Android滑动冲突解决方式(下拉刷新上拉加载更多,适配RecyclerVie
  7. Android中应用享元全局变量
  8. 【Frida Hook 学习记录】Frida Hook Android(安卓)常用方法
  9. android binder 讲解之权限管理

随机推荐

  1. Android探索之旅 | Android(安卓)Studio
  2. 2018年60个实用Android框架排行榜
  3. Android 常用 adb 命令总结
  4. Android RelativeLayout布局详解
  5. Android操作SQLite数据库
  6. Android中Dialog样式的设置
  7. Android FrameWork Service 之 StatusBar
  8. Android(安卓)锁屏功能
  9. Android(安卓)单页面 音乐播放器和电影播
  10. Android 滚动条属性