趁着公司新版本还没开始的时候,把as升级到了3.0。升级完成是没发现什么问题,也没发现有什么特别的好处。
没发现问题主要是因为有各种踩坑指南,一路都把坑都填平了,升完级心里还美滋滋的。
过了不久,要更新版本了。做好需求之后,打包给测试,这个时候坑就来了:
一、编译release需要选择V1,v2。不然会出现无法安装的情况
二、项目里面用了原生的Json解析,需要在混淆规则中加入-keep class org.json.**{*;}
。不然各种解析出来的坑
让你欲哭无泪。
不加入新规则可能出现的问题:
- json.getString()的值类型必须与服务端返回类型一致,不然解析失败
- JsonObject.put(key,url)后,再取出这个url,可能出现转义反斜杠情况。这个问题困扰了我很久,因为put(url),再取出生成sign之后,与服务端sign不一致
- 同样也是JsonObJect.put,加入了base64后的图片数据,也是导致生成的sign与服务端不一致。
总之如果升级之后出现了Json相关的问题,可以尝试修改混淆规则。这是我用了一晚上的加班才得出来的经验。