Monotouch应用程序在发布到iPhone时无法正常工作

时间:2012-08-27 18:03:15

标签: c# iphone ios5 xamarin.ios monodevelop

我在这里有点腌菜。我已经在Monotouch中完全开发了我的应用程序并在模拟器上进行了测试。一切都按照预期的方式运作。当我在调试或发布时将应用程序发布到我的iPhone时,它会将应用程序上传到设备但是我会收到以下堆栈跟踪,当我尝试在设备上启动应用程序时,会显示启动图像然后它只是意外退出。对不起,但这是我对此的所有信息,我希望有人可以帮助我。

堆栈追踪:

Please ensure your device is connected...
Connected to: JJ iPhone
2012-08-27 19:48:24.841 mtouch[1070:707] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '*** -[__NSArrayM insertObject:atIndex:]: object cannot be nil'
*** Call stack at first throw:
(
    0   CoreFoundation                      0x9769eb67 __raiseError + 231
    1   libobjc.A.dylib                     0x9a622149 objc_exception_throw + 155
    2   CoreFoundation                      0x975a7bc6 -[__NSArrayM insertObject:atIndex:] + 150
    3   CoreFoundation                      0x975a7b20 -[__NSArrayM addObject:] + 64
    4   DTDeviceKitBase                     0x03cdfdaf __DTDKDeviceSupportSearchPathURLs_block_invoke_0 + 451
    5   libdispatch.dylib                   0x962dca6f dispatch_once_f + 50
    6   libdispatch.dylib                   0x962dca38 dispatch_once + 31
    7   DTDeviceKitBase                     0x03cdfe95 DTDKDeviceSupportURLs + 104
    8   DTDeviceKitBase                     0x03ce0348 __DTDKMappedDeveloperDiskImageURLs_block_invoke_0 + 23
    9   libdispatch.dylib                   0x962dca6f dispatch_once_f + 50
    10  libdispatch.dylib                   0x962dca38 dispatch_once + 31
    11  DTDeviceKitBase                     0x03ce11be __72+[DTDKDeviceSupportFiles _inexactDeveloperDiskImageForVersion:andBuild:]_block_invoke_0141 + 125
    12  libdispatch.dylib                   0x962db126 _dispatch_barrier_sync_f_invoke + 30
    13  libdispatch.dylib                   0x962db5b6 dispatch_barrier_sync_f + 87
    14  libdispatch.dylib                   0x962db70c dispatch_sync + 45
    15  DTDeviceKitBase                     0x03ce0fea +[DTDKDeviceSupportFiles _inexactDeveloperDiskImageForVersion:andBuild:] + 228
    16  DTDeviceKitBase                     0x03ce0ef8 +[DTDKDeviceSupportFiles idealDeveloperDiskImageForVersion:andBuild:allowFallback:] + 54
    17  ???                                 0x02797d2c 0x0 + 41516332
    18  ???                                 0x02796d74 0x0 + 41512308
    19  ???                                 0x02796764 0x0 + 41510756
    20  ???                                 0x02796260 0x0 + 41509472
    21  ???                                 0x02796218 0x0 + 41509400
    22  ???                                 0x02795230 0x0 + 41505328
    23  ???                                 0x02795037 0x0 + 41504823
    24  ???                                 0x027d6048 0x0 + 41771080
    25  MobileDevice                        0x03b58bcf _AMDDeviceAttachedCallbackv3 + 163
    26  MobileDevice                        0x03b0e22d USBMuxIntCFSocketCallback + 1633
    27  CoreFoundation                      0x975b7edb __CFSocketPerformV0 + 1163
    28  CoreFoundation                      0x9756b3df __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 15
    29  CoreFoundation                      0x9756ad96 __CFRunLoopDoSources0 + 246
    30  CoreFoundation                      0x97594c68 __CFRunLoopRun + 1112
    31  CoreFoundation                      0x9759447c CFRunLoopRunSpecific + 332
    32  CoreFoundation                      0x975a51a1 CFRunLoopRun + 129
    33  ???                                 0x02794f4c 0x0 + 41504588
    34  ???                                 0x02794f14 0x0 + 41504532
    35  ???                                 0x02755c98 0x0 + 41245848
    36  ???                                 0x02755b98 0x0 + 41245592
    37  ???                                 0x0218cf60 0x0 + 35180384
    38  ???                                 0x02186db0 0x0 + 35155376
    39  ???                                 0x02189216 0x0 + 35164694
    40  mtouch                              0x0001caef WriteZStream + 102623
    41  mtouch                              0x0022f61a WriteZStream + 2276362
    42  mtouch                              0x0023213c WriteZStream + 2287404
    43  mtouch                              0x002313a1 WriteZStream + 2283921
    44  mtouch                              0x000b878f WriteZStream + 740735
    45  mtouch                              0x000b89e0 WriteZStream + 741328
    46  mtouch                              0x000bae4f WriteZStream + 750655
    47  mtouch                              0x00002eb3 mtouch + 7859
    48  mtouch                              0x00002755 mtouch + 5973
    49  ???                                 0x0000000b 0x0 + 11
)

我知道我现在可能听起来很愚蠢,但我是iPhone和Monotouch开发的新手,并且不知道如何阅读或解释这个。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:2)

这可能是组件之间的版本不匹配。请填写bug report并填写:

  • MonoTouch的版本;
  • MonoDevelop的版本;
  • OSX的版本;
  • Xcode的版本;
  • 类型(iPhone)和iOS设备的版本;
  • 完整构建日志(在项目的其他mtouch参数中添加“-v -v -v”)从MonoDevelop的构建输出(来自错误列表 pad)。

您可以从MonoDevelop中获得前四项。在 MonoDevelop 菜单中,选择关于MonoDevelop 项,然后选择版本信息标签,并将该数据复制/粘贴到错误报告中。