2012-06-06 38 views
4

我用戶android/proguard/ACRA。任何人都可以告訴我爲什麼我得到的崩潰報告有不正確的行號(行號顯然是錯誤的表述)?與ACRA不正確的線路號碼

這實在是煩人,我無法知道飛機墜毀的確切的行數,所以我不能確定我的用戶報告錯誤 謝謝

PS:我使用相應版本的映射文件I我發佈了

+0

它們都是錯誤的,或只是少數?我很想嘗試在測試版本中引入一個已知錯誤,並查看是否可以從該已知條件中獲取正確(或不正確)的報告。 –

+0

好主意我會嘗試。問題是線路不正確,或線路是函數調用(因此有些問題在那個函數中有問題) – Snake

回答

1

我找到了誰有興趣的答案。您應該避免(預驗證,優化和縮小)。這將顯示所有行號碼正確,因爲代碼不與

+0

優化可能會影響線路號碼(請參閱我的答案)。收縮和預驗證不會影響行號。 –

2

通過一些優化(特別是類合併和方法內聯),ProGuard可能無法保留所有調試信息,因爲java類文件格式不支持它。這些信息可能只是這些情況下的近似值。儘管這些應該是例外。如果信息一直錯誤,那麼您可能使用了錯誤的映射文件。