- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试调试从 Flurry Analytics 获得的崩溃日志,但看不到问题所在。这是堆栈跟踪:
0 CoreFoundation 0x181f36530 <redacted> + 132
1 libobjc.A.dylib 0x192f0c0e4 _objc_exception_throw + 60
2 CoreFoundation 0x181e248e8 -[__NSPlaceholderDictionary initWithObjects:forKeys:count:] + 420
3 CoreFoundation 0x181e3ff44 +[NSDictionary dictionaryWithObject:forKey:] + 60
4 memono 0x10005f96c -[AppDelegate iCLoudSyncCheckNotificationSync:] + 1244
5 CoreFoundation 0x181edcddc <redacted> + 20
6 CoreFoundation 0x181e1b370 __CFXNotificationPost + 2060
7 Foundation 0x182d3f520 -[NSNotificationCenter postNotificationName:object:userInfo:] + 72
8 memono 0x10005c02c -[AppDelegate syncWithCompletion:] + 660
9 libdispatch.dylib 0x19355d994 <redacted> + 24
10 libdispatch.dylib 0x19355d954 <redacted> + 16
11 libdispatch.dylib 0x19356220c __dispatch_main_queue_callback_4CF + 1608
12 CoreFoundation 0x181eee2ec <redacted> + 12
13 CoreFoundation 0x181eec394 <redacted> + 1492
14 CoreFoundation 0x181e191f4 _CFRunLoopRunSpecific + 396
15 GraphicsServices 0x18b23b6fc _GSEventRunModal + 168
16 UIKit 0x1867aa10c _UIApplicationMain + 1488
17 memono 0x100099b7c -[UpdatePromtRateViewController .cxx_destruct] + 220
18 libdyld.dylib 0x19358aa08 <redacted> + 4
我还遇到了其他一些崩溃,它总是以 [UpdatePromtRateViewController...] 开头。这只是我在应用更新后显示一次以提示用户对应用进行评分的 viewController。有一个按钮可以关闭我的应用程序并直接转到 App Store 应用程序中的我的应用程序。难道这不是“真正的崩溃”,我得到这个崩溃日志只是因为应用程序被这个按钮立即结束了?还是跟那本词典有关?也许我放了零对象?我可以通过做类似的事情来解决这个问题 - 用“if object is not nil”语句包围字典吗?
我不太擅长阅读堆栈跟踪,如果有人能给我提示这个崩溃日志试图告诉我什么,那就太好了!?
感谢您的帮助!
编辑
Flurry 分析没有给出其他消息...我正在做的是再次设置所有本地通知以使角标(Badge)图标编号排序...它工作正常,奇怪的是 [UpdatePromtRateViewController]总是出现在那个崩溃日志中,我只使用过一次,所以应该有其他没有那个的崩溃日志 -[UpdatePromtRateViewController] 因为我只在第一次应用程序启动时使用它,然后再也不会......这是代码我在那里做什么
NSEntityDescription *entityDescriptionDelegate = [NSEntityDescription entityForName:@"Entity" inManagedObjectContext:self.managedObjectContext];
NSFetchRequest *requestData = [[NSFetchRequest alloc] init];
[requestData setEntity:entityDescriptionDelegate];
NSError *error;
NSArray *objectsArray = [self.managedObjectContext executeFetchRequest:requestData error:&error];
for (NSManagedObject *object in objectsArray) {
if (!([object valueForKey:@"alarmDate"] == nil)) {
_badge += 1;
UILocalNotification *alarm = [[UILocalNotification alloc] init];
alarm.applicationIconBadgeNumber = _badge; // 1;
alarm.applicationIconBadgeNumber = 0;
alarm.timeZone = [NSTimeZone defaultTimeZone];
NSString *alarmTitleString = [[NSString alloc] initWithString:[object valueForKey:@"alarmTitle"]];
alarm.alertBody = alarmTitleString;
alarm.fireDate = [object valueForKey:@"alarmDate"];
alarm.soundName = UILocalNotificationDefaultSoundName;
NSDictionary *userInfo = [NSDictionary dictionaryWithObject:[object valueForKey:@"alarmID"] forKey:@"ID"];
alarm.userInfo = userInfo;
[[UIApplication sharedApplication] scheduleLocalNotification:alarm];
[object setValue:@"yes" forKey:@"alarmSet"];
[UILocalNotification setBadge];
alarm.applicationIconBadgeNumber = 0;
最佳答案
此方法正在崩溃:iCLoudSyncCheckNotificationSync:
并且,正如您推测的那样,这很可能是因为您为 key 传递了 nil
。
崩溃跟踪意味着在 C++ 析构函数期间进行了大量繁重的工作。那是注定要失败的。但是崩溃轨迹可能是错误的;从析构函数调用 UIApplicationMain() 似乎有点奇怪。
无论如何,是的,这是一次真正的崩溃,即使它发生在应用程序终止时,您也应该找出原因并修复它。特别是,如果您的应用程序响应“退出”(例如按下按钮)而终止,那么它真的不应该触发云同步或其他缓慢的操作。
关于ios - objc_exception_throw/崩溃/堆栈跟踪,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29237514/
我正在尝试调试从 Flurry Analytics 获得的崩溃日志,但看不到问题所在。这是堆栈跟踪: 0 CoreFoundation 0x181f365
我的应用曾一度崩溃。不告诉我为什么,异常断点发生在 return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate c
创建 NSFetchedResultsController 对象时出现以下错误 编辑 NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] in
我在这个地址 http://www.cocoabuilder.com/archive/cocoa/288659-iphone-nsmanagedobjectcontext-save-doesn-cra
这是布拉德·拉森对此的回答 SO问题 如果你添加两个断点,你应该能够调试这些异常。为此,请转到运行 |显示 |断点并创建两个全局断点(我在全局范围内执行它们,因为它们在我的所有应用程序中都非常有用)。
我在 Apple 审批流程中遇到异常,但不确定原因。我无法在本地 iPad 上重复它。 现在,在我的 xcode IDE 9.3 中,对于 swift 文件,photoOutput 是唯一出现的文件。
我一直在使用 XCode 的一个有用提示是 adding breakpoints on exceptions . 我想知道为什么我们需要添加两个断点——一个用于objc_exception_throw
我们的应用程序在 iOS 7 中崩溃,但在 iOS 6 中运行良好。我们不确定是什么导致了这个问题。我们可以看到抛出了一些异常,但我们不确定代码中的何处导致了异常。 这是崩溃报告: Incident
我是一名优秀的程序员,十分优秀!