在iOS上加载期间Unity游戏崩溃

时间:2012-01-19 14:13:49

标签: ios xcode build unity3d prime31

我正在使用iOS 5.0 SDK在Unity 3.4.2f,XCode版本4.2.1中进行开发。

我的游戏包含一个主菜单,其中包含一个加载主场景的播放按钮。游戏可以由同事构建到设备上并且工作得很好。每当构建游戏时,它会在加载第二个场景时崩溃。这已经是我存在超过一周的祸根了。

来自设备的崩溃日志如下所示:

    Exception Type:  EXC_BAD_ACCESS (SIGILL)
    Exception Codes: KERN_PROTECTION_FAILURE at 0x00ed4e90
    Crashed Thread:  0

    Thread 0 name:  Dispatch queue: com.apple.main-thread
    Thread 0 Crashed:
    0   ???                             0x050000c0 0 + 83886272
    1   ???                             0xfffffff8 0 + -8

    Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
    Thread 1:
    0   libsystem_kernel.dylib          0x33babfbc kevent + 24
    1   libdispatch.dylib               0x328ebed4 _dispatch_mgr_invoke + 744
    2   libdispatch.dylib               0x328ecf3a _dispatch_queue_invoke + 70
    3   libdispatch.dylib               0x328ec4ec _dispatch_worker_thread2 + 228
    4   libsystem_c.dylib               0x3489f58a _pthread_wqthread + 258
    5   libsystem_c.dylib               0x3489fbbc start_wqthread + 0

    *Note: Removed various other non-crashed threads through thread 11*

    Thread 0 crashed with ARM Thread State:
    r0: 0x01ab7094    r1: 0x00000000      r2: 0x00000000      r3: 0x3f800000
    r4: 0x04020000    r5: 0x3987cc80      r6: 0x01004d08      r7: 0x080000c1
    r8: 0xc1080000    r9: 0x00000000     r10: 0xc1050000     r11: 0xc1040000
    ip: 0x2fdfe144    sp: 0x00ed4e9c      lr: 0x00dfc558      pc: 0x050000c0
    cpsr: 0x20000030

哪个不是最有帮助的,但是从我在这里和其他各种网站上读到的内容,我应该能够使用像0x050000c0这样的内存地址来确定实际代码中我崩溃的位置?首先是我们尝试过的其他一些事情......

该项目属于SVN回购,因此我已将整个源目录吹走并从SVN重新更新,确保CAN正确构建的同事也做了同样的事情。当它不起作用时,我让他给我发送了一个他的xcode项目.zip尝试构建它,但Prime31 Unity插件不喜欢这样,他们指向他的源文件夹,它位于不同的用户目录上他的机器。所以我让他拉上他的统一源并发送它,这需要重新安装Prime31插件,然后我能够构建,但仍然具有相同的结果。场景加载之间崩溃。

我们都使用完全相同的物理iPad设备来构建。我们都是针对iOS 5.0构建的,而设备是4.3.3。

我已经删除所有xcode设置,然后从我的Mac删除整个/ Developer文件夹并完全重新安装xcode。结果相同。我会尝试重新安装Unity,但我不确定是否需要停用Unity Pro密钥然后重新激活?

我花了太多时间来做一些复杂而困难的事情。我知道这肯定是我无法理解的简单和愚蠢的东西,但我再也看不到森林的树木,所以我问你,亲爱的互联网!

1 个答案:

答案 0 :(得分:1)

解决!我把这篇文章链接到一位朋友,他问道:“你确定你们都是同一个统一版本吗?”我查了一下,我实际上是Unity版本3.4.1f而不是3.4.2f。更新了Unity,一切都很好。据推测,这些Prime31插件的最新版本不喜欢旧版本的Unity?