2017-04-18 12 views
5

のスタックトレースが含まれています。私はアプリを稼働させていますが、エラーとクラッシュのログにFirebaseを使用しています。最近、私は、例外のスタックトレースの中で、<OR>で始まるいくつかの行を見てきました。私はonRequestPermissionResultscheckPermissionを呼び出さないとcheckPermissionPermissionManager.getInstanceを呼び出すことはありませんので、これは通常のスタックトレースではないことを知っているFirebaseのクラッシュレポートに<OR>の

Exception java.lang.NullPointerException: Attempt to invoke interface method 'void com.mycompany.myapp.managers.b$a.f()' on a null object reference 
com.mycompany.myapp.managers.PermissionManager.getInstance (PermissionManager.java) 
<OR>.checkPermission (PermissionManager.java) 
<OR>.onRequestPermissionsResult (PermissionManager.java) 
com.mycompany.myapp.activities.ShareImageActivity.onSaveShare (ShareImageActivity.java) 
com.mycompany.myapp.activities.ShareImageActivity$3.onClick (ShareImageActivity.java) 

を下記Firebaseによって報告された例外から(パッケージ名のために保存)を直接撮影した例です。 これはセキュリティのためにAndroidがスタックトレースを難読化する方法の1つと考えていますが、これに関するドキュメントは見つかりませんでした。誰もこのスタックトレースを解釈する方法を知っていますか?

+0

あなたはプロガードを使用していますか? –

+0

@IshanKhannaはい、すでに 'mapping.txt'ファイルをアップロードしています – halileohalilei

+0

アップロード先場所?スタックトレース –

答えて

1

ここに表示されているのは、クラッシュレポートでその時点の実際のオブジェクトを特定できなかったことを示しています。現在、Proguardの解離不全のある状況があり、ここでどのオブジェクトがターゲットであるかがあいまいである可能性があります。これは、クラスの行番号を取り除いている場合に当てはまります。行番号は、自分が行っているように見えます。 Proguardの設定を変更して行番号を削除することができれば、このような状況は改善される可能性があります。

0

は、あなたのproguard-rules.proにこれを追加します。

// obfuscate file name and keep line numbers 
-renamesourcefileattribute SourceFile 
-keepattributes SourceFile,LineNumberTable 

それは、あいまいさを削除する必要があり、あなたはもうあなたのスタックトレースで<OR>は表示されません。

関連する問題