图片上传,部分机型角度不正确问题解决
前言
现在app大多都有上传图片功能,比如上传图片,发表动态可能还会上传多张图片,那在我做图片上传的时候,出现了部分机型上传图片后,图片的角度是正确的,我的两个测试机小米和华为是没问题的,但是三星的上传后,图片是默认旋转了90°,那这里要讲的就是怎么解决这个问题,在此记录一下,以保证后面再出现类似需求要多考虑一些
解决问题
直接进入正题
当我们上传图片需要做的处理
- 压缩
- 判断角度是否正确
- 如果不角度不对,纠正角度
- 其他(加水印什么的看具体需求)
解决
以下代码块
` /**
* 压缩图片,处理某些手机拍照角度旋转的问题
* @param context
* @param filePath
* @param file
* @param q
* @return
* @throws FileNotFoundException
*/
public static File compressImage(Context context, String filePath, File file, int q) throws FileNotFoundException {
Bitmap bm = getSmallBitmap(filePath);
int degree = readPictureDegree(filePath);
LogUtil.e("fengan", "degree==" + degree);
if (degree != 0) {//旋转照片角度
bm = rotateBitmap(bm