I numbers di linea mancanti di Retro Proguard

Sto cercando di deobfucare una traccia di stack dalla mia applicazione Android. Ho usato proguard quando costruisco l'applicazione e l'esecuzione di retrazione sembra funzionare, più o less.

Ciò che non funziona è la decodifica dei numbers di row. Nell'output non vengono visualizzati numbers di row e elenca diverse opzioni per each "at".

  • Textview: utilizzando lo stile del titolo di dialogo: @android: style / TextAppearance.DialogWindowTitle
  • Impedire l'altra lingua tranne l'inglese in EditText
  • Tempo di utilizzo del track Android android app installato
  • ListView riutilizza le viste quando ... non lo voglio
  • Elenco di liste espandibile con elementi figlio a radice
  • Cordova: Come impostare il file config.xml specifico per la piattaforma che non viene sovrascritto dopo la creazione di cordova?
  • Ecco il mio file proguard-project.txt:

    -keepattributes LineNumberTable -assulesssideeffects class android.util.Log { public static int v(...); public static int d(...); } 

    Questa è la mia traccia di stack:

     uncaught exception java.lang.NullPointerException at com.myapp.myapp.dbaccess.ag.a(Unknown Source) at com.myuapp.myapp.dbaccess.xa(Unknown Source) at com.myapp.myapp.dbaccess.xa(Unknown Source) at com.myapp.myapp.main.ab.run(Unknown Source) 

    Ed ecco l'output:

     uncaught exception java.lang.NullPointerException at com.myapp.myapp.dbaccess.ZNodeCache.com.myapp.myapp.dbaccess.ZNode getNodeFromCache(long)(Unknown Source) com.myapp.myapp.dbaccess.ZRoot getRootFromCache() com.myapp.myapp.dbaccess.ZNode getNodeFromDb(long,boolean) com.myapp.myapp.dbaccess.ZNode$Array getChildrenForExport(com.myapp.myapp.dbaccess.ZNode) ... many more ... at com.myapp.myapp.dbaccess.XmlImport.com.myapp.myapp.dbaccess.XmlImport$Results importFile(java.lang.String)(Unknown Source) void _doImport(java.io.InputStream,com.myapp.myapp.dbaccess.XmlImport$Results) void importFile(java.io.InputStream) void importNode(org.xmlpull.v1.XmlPullParser,com.myapp.myapp.dbaccess.ZNode) ... many more ... at com.myapp.myapp.dbaccess.XmlImport.com.myapp.myapp.dbaccess.XmlImport$Results importFile(java.lang.String)(Unknown Source) void _doImport(java.io.InputStream,com.myapp.myapp.dbaccess.XmlImport$Results) void importFile(java.io.InputStream) void importNode(org.xmlpull.v1.XmlPullParser,com.myapp.myapp.dbaccess.ZNode) ... many more ... at com.myapp.myapp.main.MainActivity$3.void run()(Unknown Source) 

    Devo mancare un altro parametro di configuration; qualche idea?

  • Ottenere risultati dei luoghi vicini dalla posizione utente utilizzando API di Google Maps in Android
  • Aggiunta di una libreria / JAR a un progetto Android Eclipse
  • Accesso negato durante la creazione di una chiavetta per l'applicazione Android
  • Androids ObjectAnimator.ofFloat non funziona correttamente
  • Qual è il modo migliore per verificare se una string contiene un URL in Java / Android?
  • Cambiare tema a livello di applicazione in modo programmato?
  • One Solution collect form web for “I numbers di linea mancanti di Retro Proguard”

    Risulta che la risposta è nella documentazione di Android (credere o no). Credo di averlo perso la prima volta. È necessario specificare il file di origine, ad esempio:

     -renamesourcefileattribute SourceFile -keepattributes SourceFile,LineNumberTable 

    Il file renamsesourcefileattribute farà sì che tutti i file di origine dispongano del nome SourceFile (o di qualsiasi altra cosa). "Retrace" non import quale sia il nome del file di origine, ma se lo lascerai, decide di ignorare i numbers di row.

    Questo va in proguard-project.txt che, se stai utilizzando Android Studio, troverai "il tuo progetto" .app.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.