|
您好,因为几乎所有的Android系统相机,摄像头默认都是横屏的,所以当用户横着手机拍照时,照片是正常的,没有问题,但如果用户是竖着拍时,图片就会被旋转90度,然后会有相关的exif写入该图片。
api.getPicture在设计之初,旨在除了为开发者提供获取多媒体图片的基本功能情况外,还提供对图片进行粗略压缩等功能。
正常情况下,getPicture时,如果不传quality、targetWidth、targetHeight也就是标识,本次getPicture不对拍照的图片进行压缩,那么这个exif是存在的(也就是你说的“返回原始图片路径”)。但是一旦传入了quality、targetWidth、targetHeight中的任意一个,图片被压缩之后,exif信息就丢失了。
所以目前的解决方案:
1、getPicture时,不要传入quality、targetWidth、targetHeight任何一个参数,保持拍照的原图,那么你就可以拿到这个exif信息了。你可以在你的服务器上处理这张图片(QQ微信等就是这么处理的),当然,这张图片可能会非常大。
2、我们已经在处理这个问题,如果发现图片是被旋转的,会将其旋转过来。并且保持quality、targetWidth、targetHeight生效。 |
|