今天突然报了一个这样的错
com.google.gson.JsonSyntaxException: java.lang.NumberFormatException: Invalid double: ""
这个错其实很简单,但是找了半天。特此记录一下。
首先要明白的是这是个什么错。简单翻译:
json语法异常:数字格式化异常:无效的double ""
其实就是说 :这里有个值"", 他不是一个double。(我们定义的类型是double,但是后台返回了一个""(字符串))
那这样就简单了,我们去找这个""就行了
把数据放在www.bejson.com上面格式化,Ctrl+F 查找需要"",发现只有3个""。那么我们只要再去找这3个当中哪个为double就可以了(这里也许3个都是double,3个都可能有错误)
这里使用Gson解析的,因为Gson对数字都当做double来解析,所以这里的intf_cartid;是double的。所以就是这个字段的数据错了!(另外一个没有定义)
让后台把传过来的""改成0就完美解决问题了。
(可能要注意改数据对ios平台的影响)。