我有这个函数return [remoteObject objectForKey:key];
,它应该返回我字典中的对象。
当我启动Iphone模拟器时,一切都很好,它返回正确的对象。 但是,当我启动相同的应用程序和我的设备时,我的应用程序崩溃了,它说SIGABRT 和
2011-12-05 10:25:17.601 iPhoneXMPP [242:1a1f] - [CALayer objectForKey:]: 无法识别的选择器发送到实例0x4f3d40 2011-12-05 10:25:17.602 iPhoneXMPP [242:1a1f] * 由于未被捕获而终止应用 异常'NSInvalidArgumentException',原因:' - [CALayer objectForKey:]:无法识别的选择器发送到实例0x4f3d40'
我的密钥是Id(17),它也在我的字典中。
你们中的任何人都知道为什么这只会发生在我的设备上吗?
答案 0 :(得分:1)
这意味着您的remoteObject
对象正在某处解除分配。通常自动释放在设备上发生得更快,因为它比模拟器具有更少的内存,这就是为什么在模拟器上当你试图调用它的方法时你的对象仍然存在。确保在创建对象时调用retain
,并在完成后调用release
。