我在appstore中有一个应用程序,直到iOS6才能正常运行。
它崩溃了 - 但只有从商店下载时才会崩溃。当它通过xCode安装时没有崩溃。
当我在管理器中阅读崩溃报告时,我得到了这个:
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x32b6f526 objc_retain + 6
1 XXXX 0x000cefd8 -[XXXX messageComposeViewController:didFinishWithResult:] (XXXX.m:96)
2 CoreFoundation 0x348659c0 __invoking___ + 64
3 CoreFoundation 0x347bcfe6 -[NSInvocation invoke] + 282
4 CoreFoundation 0x347bcb3e -[NSInvocation invokeWithTarget:] + 46
5 UIKit 0x35f89324 -[_UIObjectArgumentReplacingProxy forwardInvocation:] + 300
6 CoreFoundation 0x34864616 ___forwarding___ + 622
7 CoreFoundation 0x347bbf64 _CF_forwarding_prep_0 + 20
所以我假设它是文件中的第96行。
这是代码:
- (void)messageComposeViewController:(MFMessageComposeViewController *)controller didFinishWithResult:(MessageComposeResult)result {
[self dismissModalViewControllerAnimated:NO]; //take away the SMS screen fast
NSString *sms = controller.body; //**** THIS IS LINE 96
switch (result)
{
case MessageComposeResultCancelled:
//message.text = @"Canceled";
NSLog(@"Result: canceled");
break;
case MessageComposeResultSent: {
NSLog(@"Result: sent %@",sms);
}
break;
case MessageComposeResultFailed:
//message.text = @"Failed";
NSLog(@"Result: failed");
break;
default:
//message.text = @"Not sent";
NSLog(@"Result: not sent");
break;
}
[self.delegate myVCDidFinishWithValue: val];
}
所以基本上我在这种情况下我只是取出完整的代码,因为我不再需要它了。
我的问题:
现在有没有办法测试应用程序,好像它是从AppStore加载的,所以我可以检查其他问题?
或者我现在赌博并希望错误消失?
ps当我通过xCode发送应用程序时 - 甚至使用TestFlight分发给测试人员它工作得很好!只有从Appstore它崩溃了。知道他们是否对代码做了什么?
非常感谢!
答案 0 :(得分:1)
我认为你应该在方法的底部解雇它。 ---安装:您可以将存档(并为企业存储)ipa拖动到组织者中的设备上。
(详见评论)