1.首先 2.0.9编译so出来跟一直不一样,多了个hidapi  库

2.跟Tocy的对比,SDLmain 执行的路径不一样,一个是/src/main/android/SDL_android_main.c

一个是src\core\android\SDL_android.c

TOCY :

视频渲染需要Surfaceview,所以SDLsurface继承了它来播放。

SDLSurface.surfaceChanged()——sdlThread———SDLMain(runable)——SDLActivity.nativeInit----->

执行/src/main/android/SDL_android_main.c的SDL_Android_Init——>status = SDL_main(argc, argv);(在SDL_android_main.c)

功能很简单,初始化SDL在Android下的参数,获取命令行参数,执行SDL_main()。

2.0.9官方介绍使用

--- MyGame.java --------------------------

package com.gamemaker.game;

import org.libsdl.app.SDLActivity;

/**

* A sample wrapper class that just calls SDLActivity

*/

public class MyGame extends SDLActivity { }

启动流程:

Oncreate————mSurface = new SDLSurface——————handleNativeState(onpause,onResume,surfaceChanged用到)------mSDLThread---->SDLMain线程(runable)————>SDLActivity.nativeRunMain(运行so的主函数)——执行jni\SDL2\src\core\android\SDL_android.c————执行SDL_main——————执行完来到java层退出————SDLActivity.handleNativeExit();

官方说自从2.0.6后src\main\android\SDL_android_main.c   不再需要了,可能全部集合在src\core\android\SDL_android.c这里了。

SDL_android.c和SDL_android_mian.c是官方demo中编译官方接口的c源文件,其中SDL_android.c编译21个接口放在libSDL2.so共享库中;在此次使用SDL播放视频的Demo中,SDL_android_mian.c配合我们自定义的Custom.c(可以定义多个或者一个文件)只编译一个nativeInit()接口放在libmain.so共享库中

所以libmain.so  只包含了libSDL2中的有 nativeInit()接口

https://www.jianshu.com/p/067ea8095a5e

SDL调用方法这里讲的很详细

SDL2.0.9源码分析的更多相关文章

  1. jQuery 2.0.3 源码分析Sizzle引擎解析原理

    jQuery 2.0.3 源码分析Sizzle引擎 - 解析原理 声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢! 先来回答博友的提问: 如何解析 div > p + ...

  2. Spark2.1.0之源码分析——事件总线

    阅读提示:阅读本文前,最好先阅读<Spark2.1.0之源码分析——事件总线>.<Spark2.1.0事件总线分析——ListenerBus的继承体系>及<Spark2. ...

  3. jQuery 2.0.3 源码分析 Deferred(最细的实现剖析,带图)

    Deferred的概念请看第一篇 http://www.cnblogs.com/aaronjs/p/3348569.html ******************构建Deferred对象时候的流程图* ...

  4. jQuery 2.0.3 源码分析 Deferred概念

    JavaScript编程几乎总是伴随着异步操作,传统的异步操作会在操作完成之后,使用回调函数传回结果,而回调函数中则包含了后续的工作.这也是造成异步编程困难的主要原因:我们一直习惯于“线性”地编写代码 ...

  5. jQuery 2.0.3 源码分析 事件绑定 - bind/live/delegate/on

    事件(Event)是JavaScript应用跳动的心脏,通过使用JavaScript ,你可以监听特定事件的发生,并规定让某些事件发生以对这些事件做出响应 事件的基础就不重复讲解了,本来是定位源码分析 ...

  6. jQuery 2.0.3 源码分析 事件体系结构

    那么jQuery事件处理机制能帮我们处理那些问题? 毋容置疑首先要解决浏览器事件兼容问题 可以在一个事件类型上添加多个事件处理函数,可以一次添加多个事件类型的事件处理函数 提供了常用事件的便捷方法 支 ...

  7. jQuery 2.0.3 源码分析 Deferrred概念

    转载http://www.cnblogs.com/aaronjs/p/3348569.html JavaScript编程几乎总是伴随着异步操作,传统的异步操作会在操作完成之后,使用回调函数传回结果,而 ...

  8. jQuery 2.0.3 源码分析core - 整体架构

    拜读一个开源框架,最想学到的就是设计的思想和实现的技巧. 废话不多说,jquery这么多年了分析都写烂了,老早以前就拜读过, 不过这几年都是做移动端,一直御用zepto, 最近抽出点时间把jquery ...

  9. jQuery 2.0.3 源码分析core - 选择器

         声明:本文为原创文章,如需转载,请注明来源并保留原文链接Aaron,谢谢!      打开jQuery源码,一眼看去到处都充斥着正则表达式,jQuery框架的基础就是查询了,查询文档元素对象 ...

随机推荐

  1. CTF资料

    题目大概有这么几个 web,密码学,pwn(综合渗透),misc(杂项),reverse(逆向),ppc(编程类) 入门: http://bobao.360.cn/ctf/  360的CTF训练营ww ...

  2. JS案例六_1:添加城市

    使用的相关知识点:对子节点的添加:document.appendClild() 文本节点的创建:document.createTextNode() 元素节点的创建:document.createEle ...

  3. 考研计算机复试笔试(数据结构/C语言简答题篇)

    1.比较顺序存储结构和链式存储结构的优缺点,什么情况下链表比顺序表好? 顺序存储时相邻元素的存储单元的地址也相连,可以随机存取.优点是存储密度大,空间利用率高:缺点是插入或删除时不方便. 链式存储时相 ...

  4. [Oracle][DATAGUARD] PHYSICAL STANDBY环境里,11.2.0.4 , 也可以使用Pfile来运行Primary和Standby(虽然很少有人用)

    ####Primary#### [oracle@primary ~]$ sqlplus / as sysdba SQL*Plus: Release 11.2.0.4.0 Production on 金 ...

  5. 实现对HashMap的value排序

    问题:如何对HashMap中的value值进行排序 关键点:1.取HashMap的Map.Entry,放入List2.利用Collections.sort(List, Comparator<? ...

  6. react-native 安装的时候遇到的问题

    JAVA  JDK必须要版本8以上(卡了我好大一会,不要忘了环境变量换成8的路径) 这个报错是因为我的版本没升级? 总之解决方法如下 给升级下就好啦~ 然后出现个这么个问题,是因为我用的测试手机是红米 ...

  7. DevExpress ASP.NET Core Controls 2019发展蓝图(No.1)

    本文主要为大家介绍DevExpress ASP.NET Core Controls2019年的官方发展蓝图,更多精彩内容欢迎持续收藏关注哦~ [DevExpress ASP.NET Controls ...

  8. Java 平时作业五

    使用 I/O 流和文件对象实现目录备份功能. package asg5; import java.io.File; import java.io.FileInputStream; import jav ...

  9. c#线程池ThreadPool实例详解

    1. 如何查看线程池的最大线程数和最小线程数 static void Main(string[] args) { Console.WriteLine("----------线程池开始,线程I ...

  10. 【转】Android-Input 触摸设备

    https://source.android.com/devices/input/touch-devices 触摸设备 Android 支持各种触摸屏和触摸板,包括基于触控笔的数字化板. 触摸屏是与显 ...