2

我在我的游戏中使用 Prime31 的 GameCenter Turn Based 插件来处理在线比赛。
当我在显示 Game Center 的媒人时(使用插件 => 调用GameCenterTurnBasedBinding.findMatch(2,2,false);)收到来自 Game Center 的“游戏邀请”通知时出现问题。

应用程序崩溃,Xcode 中显示以下输出:

2012-08-20 08:39:27.050 Cabrais[1808:707] *** Assertion failure in -[NSIndexPath row], /SourceCache/UIKit/UIKit-1914.85/UITableViewSupport.m:2606
2012-08-20 08:39:27.052 Cabrais[1808:707] *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'Invalid index path for use with UITableView. Index paths passed to table view must contain exactly two indices specifying the section and row. Please use the category on NSIndexPath in UITableView.h if possible.'
*** First throw call stack:
(0x355ec88f 0x33210259 0x355ec789 0x349e03a3 0x32d4d673 0x35dba49d 0x35dd90e5 0x35dd9379 0x32d4cefb 0x32d4bfd9 0x32d4b763 0x35da7657 0x32ceff37 0x3554b1fb 0x32716aa5 0x327166bd 0x327165c9 0x35dd8179 0x35da936b 0x35dbce65 0x35dbb6b3 0x33979c59 0x33984e91 0x355bf2ad 0x355424a5 0x3554236d 0x332dd439 0x32d1acd5 0x6954 0x3388)
terminate called throwing an exception(lldb)

我已经尝试通过我的应用程序和 GameCenter 的 Ipad/Iphone 设置以及通过删除所有通知相关代码的代码来禁用通知,但这根本没有任何效果。

我通过调试知道我的函数中附加到 GameCenterTurnBasedManager.handleTurnEventEvent 的代码在崩溃发生之前没有被调用,也没有注册到 EtceteraManager.remoteNotificationReceived 的代码。(否则,这两个功能都可以正常工作。)

我问过 Prime31,他们告诉我例外是表格数据源处理不当,并向 Apple 提交错误报告。

有没有人在使用 Unity 时遇到过类似的崩溃/错误?有什么方法可以尝试在通知到达之前捕获通知并删除媒人或能够处理统一的错误?

任何见解/帮助/意见将不胜感激,

谢谢。

4

0 回答 0