Ios平台游戏异常闪退问题之get_numerous_trampoline排查记录
2014-12-10 16:29
423 查看
案件回放:
打开游戏,进行上线前的检查,在检测功能的时候,莫名其妙的就崩溃,闪退了。。。。。。立即重新拉起游戏,准备简单的重现之后找研发来修复,发现不能必现了。这个时候去提单也太Low了~~~找到研发问了下,本身的应用是否有做crash异常上报。(目前这一块的Open Source框架比较多,我就不在此累赘复述了)直接查看上一次的crash异常上报信息,结合symbol 信息还原堆栈信息。
案件侦测:
查看还原后的堆栈信息,有一处信息为:
发现最终导致该起“凶案”的罪犯应该是跟Mono本身有关系。而且从_g_log的调用来看,能够给予我们提供线索的应该是get_numerous_trampoline这个函数。
查看Mono源码对应的该函数原型
以上的红色标记信息显示:
get_numerous_trampoline函数中对于异常,错误信息的处理error信息为:Ran out of trampolines of type
查看到该信息之后,直接可以去搜索对应的解决方案了
于是参考:
http://answers.unity3d.com/questions/64909/ran-out-of-trampolines-of-type-2-ios.html
在Unity上做了修改,本以为一切应该可以回归正常,,,不会出现杨过叫了小龙女回头的是陈XX的一种哀伤和心碎了,,,可是build完成后,发现,,,还是crash,查看堆栈还是,,,,jit,~~~而且还是这里的问题,,,老夫觉得有点愤怒了,,,难道说又陷入了深深的坑里了,,,你存在,bug深深的坑里,,,如何逃离,如何逃离~~~
最终结果和解决方案:
是这里的问题,也是这个原因,但是修改的不对。正确的是:
在Xcode里面(我这里是ios),选中对应的工程,然后
打开游戏,进行上线前的检查,在检测功能的时候,莫名其妙的就崩溃,闪退了。。。。。。立即重新拉起游戏,准备简单的重现之后找研发来修复,发现不能必现了。这个时候去提单也太Low了~~~找到研发问了下,本身的应用是否有做crash异常上报。(目前这一块的Open Source框架比较多,我就不在此累赘复述了)直接查看上一次的crash异常上报信息,结合symbol 信息还原堆栈信息。
案件侦测:
查看还原后的堆栈信息,有一处信息为:
发现最终导致该起“凶案”的罪犯应该是跟Mono本身有关系。而且从_g_log的调用来看,能够给予我们提供线索的应该是get_numerous_trampoline这个函数。
查看Mono源码对应的该函数原型
以上的红色标记信息显示:
get_numerous_trampoline函数中对于异常,错误信息的处理error信息为:Ran out of trampolines of type
查看到该信息之后,直接可以去搜索对应的解决方案了
于是参考:
http://answers.unity3d.com/questions/64909/ran-out-of-trampolines-of-type-2-ios.html
在Unity上做了修改,本以为一切应该可以回归正常,,,不会出现杨过叫了小龙女回头的是陈XX的一种哀伤和心碎了,,,可是build完成后,发现,,,还是crash,查看堆栈还是,,,,jit,~~~而且还是这里的问题,,,老夫觉得有点愤怒了,,,难道说又陷入了深深的坑里了,,,你存在,bug深深的坑里,,,如何逃离,如何逃离~~~
最终结果和解决方案:
是这里的问题,也是这个原因,但是修改的不对。正确的是:
在Xcode里面(我这里是ios),选中对应的工程,然后
在项目option--iphone build处添加额外的参数-aot "ntrampolines=2048"
这个参数默认值为1024,试着增加这个值直到满足你的应用的需求(Ran out of trampolines of type 0 )
Ran out of trampolines of type 1
如果你使用了过多的泛型嵌套,如List<T>中还有List<T>成员,你可以同上通过添加额外的参数-aot "nrgctx-trampolines=2048" 来解决。
蹦床类型1的默认值为1024.
Ran out of trampolines of type 2
如果你界面操作频繁,你可以通过添加额外的参数-aot "nimt-trampolines=512" 来解决。
这里的默认值为128.
打完收工~~~
相关文章推荐
- iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误
- Unity3D 游戏在 iOS 上因为 trampolines 闪退的原因与解决办法
- 电脑异常蓝屏问题排查记录
- Unity3D 游戏在 iOS 上因为 trampolines 闪退的原因与解决办法
- iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误
- 移植cocos2d-x 游戏从Android平台到IOS平台分辨率问题及解决办法
- 腾讯移动游戏平台SDK(MSDK) ios版Ane扩展 过程中所遇到的问题
- [ Nginx ] 记录关于 $_GET 获取参数有误的一次问题排查
- Unity3D 游戏在 iOS 上因为 trampolines 闪退的原因与解决办法
- 移植cocos2d-x 游戏从Android平台到IOS平台分辨率问题及解决办法
- IOS开发过程中Xcode编译错误以及运行时异常等问题记录
- iOS平台下闪退原因汇总(一):"Ran out of trampolines of type 0/1/2" 运行时间错误
- LINQ.Contains超过2100记录报异常Exception的问题
- 【iOS-Cocos2d游戏开发之十】添加粒子特效并解决粒子系统特效与Layer之间的坐标问题;
- 用序列化搞定了游戏记录问题
- 【Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- 【Cocos2d游戏开发之十二】浅析使用C++/C/OC进行iOS游戏混编出现“failed with exit”问题与小结;
- 【iOS-Cocos2d游戏开发之七】在cocos2d中添加/删除系统组件,并解决View设置透明会影响View中的其他组件的问题!【11月28日更新解决添加组件Cocos2d动画停止播放的BUG】
- 【iOS-Cocos2d游戏开发之十八】解决滚屏背景/拼接地图有黑边(缝隙)/动画播放出现毛边以及禁止游戏中自动锁屏问题!【2011年12月18日补充】
- 【iOS-Cocos2d游戏开发之八】开启高清(960*640)模式问题与解答、图片适配以及设置iphone横竖屏