2017-03-15 87 views
1

我在Android項目中包含了Crashlytics。現在,我測試了正確發送崩潰報告。我強迫七次出現同樣的故障,儀表板正確顯示它們。然而,它說,有受碰撞,當所有這些墜毀已造成同一用戶7個用戶:Crashlytics,儀表板中受影響的用戶數量錯誤

enter image description here

FYI:我用這個方法來唯一地識別用戶(稱爲每次該應用程序啓動):

void Crashlytics.setUserIdentifier(String identifier);

我用電子郵件來識別每個用戶。

UPDATE:

Crashlytics INIT:

/** 
* Android Main Application 
*/ 
public class MyApp extends Application { 

    @Override 
    public void onCreate() { 
     super.onCreate(); 
     //Init Crashlytics 
     Fabric.with(this, new Crashlytics()); 

    } 

更新2

我已出口問題的IDS( 「導出ID」 按鈕),然後我得到的未來info:

enter image description here

在此報告中,只有兩個用戶(因爲我使用不同的日誌用戶方法)並且正確顯示了崩潰次數。

這是正確的嗎?

謝謝

+0

您的標識符包含哪些數據?向我們展示如何初始化Crashlytics? – Rockney

+0

@Rockney我已經更新了我的答案。非常感謝! – jmartinalonso

回答

3

邁克從織物這裏。

這可能發生在幾個不同的原因。首先,我們不試圖跨多個設備跟蹤用戶或安裝設備。如果有人安裝應用程序,將其刪除,然後重新安裝應用程序,即使在同一設備上,它們也會顯示爲新用戶。如果您在許多不同設備的模擬器上進行測試,也會發生這種情況。

並非所有的應用程序都使用導出「用戶ID」時可用的自定義用戶標識符,因此我們不依賴於該數據來跟蹤特定用戶,這就是爲什麼您會看到自定義用戶數據和Fabric面板中設置的用戶。

0

感謝您的解釋。我已經在我的應用程序安裝過程中添加了這些行:

// Authentificate user for the Crashlytics session 
Crashlytics.setUserIdentifier(Long.toString(User.getUserLogged().id)); 
Crashlytics.setUserEmail(User.getUserLogged().email); 
Crashlytics.setUserName(User.getUserLogged().getAuthorFullName()); 

不幸的是,沒有任何信息顯示在控制檯Crashlytics: enter image description here

PS:有時候,我不知道爲什麼,有這些信息,但它真的很罕見...

感謝您的支持Mike!

+0

我會仔細檢查一下,確保您在每個會話中有值並記錄後記錄這些值。 –

+0

@MikeBonnell我確信這些值 – anthony

+0

Gotcha,在這種情況下,在崩潰發生前寫入Logcat之前查看這些值的日誌會很有幫助。 –