我們使用testflight.com sdk和flurry.com sdk來跟蹤未處理的異常。問題是在我們添加testflight.com sdk之後,沒有任何例外情況被亂七八糟。實施Testflight.com和Flurry.com異常處理
void uncaughtExceptionHandler(NSException *exception)
{
[FlurryAnalytics logError:@"ERROR_NAME" message:@"ERROR_MESSAGE" exception:exception];
}
- (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
#if !TARGET_IPHONE_SIMULATOR
NSSetUncaughtExceptionHandler(&uncaughtExceptionHandler);
struct sigaction newSignalAction;
memset(&newSignalAction, 0, sizeof(newSignalAction));
newSignalAction.sa_handler = &signalHandler;
sigaction(SIGABRT, &newSignalAction, NULL);
sigaction(SIGILL, &newSignalAction, NULL);
sigaction(SIGBUS, &newSignalAction, NULL);
[FlurryAnalytics startSession:kFlurryKey];
[TestFlight takeOff:kTestflightKey];
[[UIApplication sharedApplication]
registerForRemoteNotificationTypes:(UIRemoteNotificationTypeBadge |
UIRemoteNotificationTypeSound |
UIRemoteNotificationTypeAlert)];
[UIApplication sharedApplication].applicationIconBadgeNumber = 0;
#endif
.
.
.
我不知道testflight.com是怎麼做的,但它似乎像他們截獲的異常,並登記數據自己沒有:
時未處理的異常出現看起來像這樣的方法觸發讓註冊方法運行?
這兩種方式能夠共存嗎?
你解決這個問題? – Jules 2012-10-31 08:44:48
我沒有試圖說實話。我現在沒有編寫太多可可,所以我的焦點在別處。 – 2012-10-31 12:25:18