bug描述是这样的, 为了描述的方便,我先定义几个变量
A: 客户端A
B: 客户端B
a_send: 发送的图片a
a_recv: 接收到的图片a(这里的a可能和发送的不一样)
有2个客户端A和B, 他们自己应该是可以发送和接收图片的.但是接收端接收到了, 但是无法打开.
A发送a_send给B, B收到了a_recv,但是无法打开; 我将这个图片导入到windows里面, 发现windows是可以识别的.
然后我通过在浏览器输入图片下载的url,发现图片也是可以打开的(其实这里有个坑)
我就纳闷了怎么办?
我将B接收到的b_recv解码,错误....我当是没有想到图片的问题, 一直以为是BitmapFactory.decodeStream是有bug的,
并且网上也有很多文章说BitmapFactory.decodeStream的低版本的SDK中是有bug的,但是当我使用了网上人提供的新方法来解码该文件的时候,还是有错误...
但是我不放弃, 我去Google,去stackoverflow查找办法. 毫无疑问, 无果.
我就折腾了半天为什么BitmapFactory.decodeStream这个是有系统bug的.
当前也因为被一个原因误导了,就是 A与B是2个不同的手机, 当用A来接收的时候能接收到,当用B来接收的时候接收不到.
我还以为是手机的问题.唉....
这个时候, 对于我们很关键的一点, 需要先去验证发送的图片a_send和a_recv大小是否一样. 不要想其他的,
当我将发送的文件和接收的文件比对以后,发现,接收的文件少了一个字节.
就是这一个字节导致了BitmapFactory.decodeStream解码错误,但是windows解码是正确的,估计windows系统对图片的解码做了相应的优化..
截至目前位置,该问题还没有完全解决.
等待下周一来继续弄....