當前位置:成語大全網 - 書法字典 - android proguard混淆後Gson解析數據始終為空。

android proguard混淆後Gson解析數據始終為空。

混淆代碼時的註意事項:在為android打包過程中使用proguard時,會導致壹些錯誤1。視圖xml中編寫的onClick響應是錯誤的。因為用xml寫的onClick是反射調用的,所以proguard認為代碼中沒有調用它們。因此,它們被從代碼中移除或重命名。解決方法:在proguard.cfg中添加以下代碼,防止視圖xml中匹配的onClick方法被proguard-keepclassmemberclass * extend Android . app . activity { public void *(Android . view . view)優化;}2.jni反轉java方法。這些類或方法也可能被proguard移除,因為它們沒有被調用,或者它們可能都被重命名。這些方法最好寫在壹個類中,然後這個類不優化,或者jni調用的所有類和方法都在proguard.cfg中找到並配置,不要優化。3.反射調用的其他java類和方法使用反射時,壹定要註意,proguard可能會認為那些方法沒有被調用,在代碼優化過程中會被重命名或刪除。在使用反射的地方,必須在proguard.cfg中配置,反射調用過的類和方法,沒有經過優化,最終會產生壹些文件dump . txt——描述了所有類文件在。apk文件——並列出原始類、方法和字段名稱與混亂代碼之間的映射。這份文件非常重要。當您收到發布版本的錯誤報告時,您可以使用它來翻譯混亂的代碼。seeds . txt-–列出沒有混淆的類和成員。usage . txt–列出從中刪除的代碼。apk。註意分析mapping.txt和usage.txt看用xml view寫的onClick響應函數,jni調用的java類和方法,反映被調用的類和方法是否混淆或重命名-keep classcom . bad logic . gdx . backgrounds . Android . * *。}只是不要混淆這樣的東西:這個包下的類(不包括子包裏的東西),如果要用第三條裏的壹個類,就要像上面那個壹樣添加這個類所屬的包,註意Android-support-v4.jar的包問題,這個jar包的處理細節見:9928801。