[英]Why would this app crash 100% when running from Testflight, maybe 10% from Xcode
I'm having an annoying problem, and previous similar answers on SO aren't helping much. 我遇到了一个烦人的问题,以前关于SO的类似答案并没有太大帮助。
I have a game (using Sprite Kit) which sometimes crash when a certain method finishes running. 我有一个游戏(使用Sprite Kit),当某种方法完成运行时,有时会崩溃。 It does this 10% (or less) of the time when I run it on my iPhone 5s from Xcode, but if I upload to Testflight, it does it 100% of the time.
当我从Xcode在iPhone 5s上运行它时,它执行此操作的时间为10%(或更少),但是如果我上载到Testflight,则它有100%的时间执行该操作。
Xcode doesn't give me great debugging info, it shows a green breakpoint line in main.m on this line: Xcode不能给我很好的调试信息,它在main.m的绿色断点行显示以下内容:
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
and on the left panel it says this happens in: 在左侧面板上说这发生在:
Thread 1: 线程1:
Queue: com.apple.spritekit.renderQueue 0 SKCRenderer::preprocessSpriteImp(std::__1::vector >&, SKRenderQuadPool&, SKCSprite const*, _GLKMatrix4 const&, float, unsigned int&, bool)const
队列:com.apple.spritekit.renderQueue 0 SKCRenderer :: preprocessSpriteImp(std :: __ 1 :: vector>&,SKRenderQuadPool&,SKCSprite const *,_GLKMatrix4 const&,float,unsigned int&,bool)const
and I see an EXC_BAD_ACCESS (code=EXC_I386_GPFLT) in this line:
我在此行中看到一个EXC_BAD_ACCESS(code = EXC_I386_GPFLT):
0x1015bc663: movq 16(%rbx), %rcx
0x1015bc663:movq 16(%rbx),%rcx
I will attach a pic actually of the surrounding stuff 我会附上一张实际上是周围事物的照片
I am bad at debugging and I don't know what to do. 我不擅长调试,也不知道该怎么办。 One notable thing is that this never happens in the iPad version.
值得注意的一件事是,iPad版本永远不会发生这种情况。 I'm very confused as to why it would happen sometimes but not always.
我很困惑为什么有时会发生但并非总是如此。
Because of derived data app might not crash while running from xcode. 由于派生数据,从xcode运行时应用可能不会崩溃。 Few bad access are hidden if zombies are enabled.Its all about memory reference and some thing which legally is dead but actually exists at memory location can hide a legitimate bad access.
如果启用了僵尸,则几乎没有错误的访问被隐藏,所有这些都与内存引用有关,并且某些合法死亡的但实际上存在于内存位置的东西可以隐藏合法的错误访问。
Try deleting derived data and disable zombies you will get same bad access from xcode as well. 尝试删除派生数据并禁用僵尸,您也会从xcode中获得相同的错误访问权限。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.