一行代碼解決Android某個字段gson解析失敗,致使網絡請求總體失敗的問題。
原文
項目github地址git
1.工程根目錄加入repositoriesgithub
buildscript { repositories { maven { url 'https://jitpack.io' } } } allprojects { repositories { maven { url 'https://jitpack.io' } } }
2.工程根目錄build.gradle加入ClassPathjson
dependencies { classpath 'com.github.LianjiaTech:gson-plugin:2.0.1' }
3.工程app目錄build.gradle加入依賴segmentfault
apply plugin: 'com.ke.gson.plugin'
4.可選調用(監聽異常json字段,建議收到後上報給服務器)服務器
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.** { *; }