摘要:一行代碼解決某個字段解析失敗,導(dǎo)致網(wǎng)絡(luò)請求整體失敗的問題。原文項目地址工程根目錄加入工程根目錄加入工程目錄加入依賴可選調(diào)用監(jiān)聽異常字段,建議收到后上報給服務(wù)器添加混淆
一行代碼解決Android某個字段gson解析失敗,導(dǎo)致網(wǎng)絡(luò)請求整體失敗的問題。
原文
項目github地址
1.工程根目錄加入repositories
buildscript { repositories { maven { url "https://jitpack.io" } } } allprojects { repositories { maven { url "https://jitpack.io" } } }
2.工程根目錄build.gradle加入ClassPath
dependencies { classpath "com.github.LianjiaTech:gson-plugin:2.0.1" }
3.工程app目錄build.gradle加入依賴
apply plugin: "com.ke.gson.plugin"
4.可選調(diào)用(監(jiān)聽異常json字段,建議收到后上報給服務(wù)器)
ReaderTools.setListener(new ReaderTools.JsonSyntaxErrorListener() { @Override public void onJsonSyntaxError(String exception, String invokeStack) { //upload error info to server Log.e("test", "json syntax exception: " + exception); Log.e("test", "json syntax invokeStack: " + invokeStack); } });
5.添加混淆keep
-keep class com.google.gson.** { *; } -keep class com.ke.gson.** { *; }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/72252.html
摘要:六原理說明侵入編譯流程,在編譯過程中,修改庫的字節(jié)碼,修改解析相關(guān)的方法,在數(shù)據(jù)類型不一致的時候,跳過當前字段的解析。 一、目錄 1.gson-plugin告別Json數(shù)據(jù)類型不一致(一)2.gson-plugin基礎(chǔ)源碼分析(二)3.gson-plugin深入源碼分析(三)4.gson-plugin如何在JitPack發(fā)布(四) 看完這4篇文章,對Gson解析會有更加深刻的認識,對A...
摘要:六修改內(nèi)部類的方法這個的方法是對類型的數(shù)據(jù)進行解析,我們判斷輸入的數(shù)據(jù)類型不是類型,就直接跳過解析,核心是在方法中插入方法。每一個類每一個內(nèi)部類每一個匿名內(nèi)部類,都會生成一個獨立的文件,如。 一、項目地址 項目地址:github-gson-plugin 二、ReaderTools解析 /** * Created by tangfuling on 2018/10/23. */ pu...
閱讀 3086·2023-04-26 00:53
閱讀 3536·2021-11-19 09:58
閱讀 1700·2021-09-29 09:35
閱讀 3290·2021-09-28 09:46
閱讀 3869·2021-09-22 15:38
閱讀 2698·2019-08-30 15:55
閱讀 3016·2019-08-23 14:10
閱讀 3831·2019-08-22 18:17