本文件會概要說明使用 iOS v3 專用的 Google Analytics (分析) SDK 所進行的當機和例外狀況評估。
總覽
您可以透過當機和例外狀況評估功能,評估應用程式中發生的當機事件和例外狀況類型。例外狀況有下列欄位:
欄位名稱 | 追蹤器欄位 | 類型 | 必要 | 說明 |
---|---|---|---|---|
說明 |
|
|
否 | 例外狀況的說明 (最多 100 個半形字元)。接受 nil 。 |
isFatal |
|
BOOL |
是 | 指出例外狀況是否嚴重。YES 表示嚴重。 |
系統主要會在「當機和例外狀況」報表中提供當機和例外狀況資料。
偵測到例外狀況
「捕捉到的例外狀況」是指您在應用程式中定義了例外狀況處理程式碼的錯誤,例如在資料要求期間偶爾發生網路連線逾時。
透過在追蹤程式上設定例外狀況欄位值並傳送命中,以評估偵測到的例外狀況,如以下範例所示:
/* * An app tries to load a list of high scores from the cloud. If the request * times out, an exception is sent to Google Analytics */ @try { // Request some scores from the network. NSArray *highScores = [self getHighScoresFromCloud]; } @catch (NSException *exception) { // May return nil if a tracker has not already been initialized with a // property ID. idtracker = [[GAI sharedInstance] defaultTracker]; [tracker send:[[GAIDictionaryBuilder createExceptionWithDescription:@"Connection timeout" // Exception description. May be truncated to 100 chars. withFatal:@NO] build]]; // isFatal (required). NO indicates non-fatal exception. }
未偵測到例外狀況評估
未偵測到的例外狀況代表應用程式在執行階段遇到意外狀況,且經常嚴重導致應用程式異常終止的情況。只要將 trackUncaughtExceptions
屬性設為 YES
,即可自動將未偵測到的例外狀況傳送至 Google Analytics (分析)。例如:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { [[GAI sharedInstance] setTrackUncaughtExceptions:YES]; return YES; }
使用自動例外狀況評估時,請注意下列事項:
- 凡是使用自動例外狀況評估功能傳送的例外狀況,Google Analytics (分析) 都會將其回報為嚴重錯誤。
- 根據預設,系統會透過例外狀況類型、類別名稱、方法名稱和執行緒名稱自動設定說明欄位。