6
我想從我的Android應用程序中去除堆棧跟蹤。我在構建應用程序時使用了proguard,並且運行回溯似乎可以工作,或多或少。Proguard回溯丟失的行號
什麼不工作解碼行號。輸出中不顯示行號,它列出了每個「at」的幾個選項。
這裏是我的ProGuard-project.txt文件:
-keepattributes LineNumberTable
-assumenosideeffects class android.util.Log {
public static int v(...);
public static int d(...);
}
這是我的堆棧跟蹤:
uncaught exception
java.lang.NullPointerException
at com.myapp.myapp.dbaccess.ag.a(Unknown Source)
at com.myuapp.myapp.dbaccess.x.a(Unknown Source)
at com.myapp.myapp.dbaccess.x.a(Unknown Source)
at com.myapp.myapp.main.ab.run(Unknown Source)
這裏是輸出:
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)
我必須缺少另一個配置參數;有任何想法嗎?
您的答案讓我知道http://proguard.sourceforge.net/manual/examples.html#stacktrace包含額外的行-printmapping out.map – Mick
您在哪些文件中放置了這些行?我曾在Android Studio的'proguard-rules.pro'文件中嘗試過,但行號尚未出現。 – codelearner
在proguard-project.txt中 –