之前写的一个工具类,在华为手机Android版本12上无法返回图片路径,提示不是一个文件或是文件不存在。
所以更改此工具类如下:
package com.suoer.comeonhealth.laibadoctorandroid.utils;
import android.app.Activity;
import android.content.ContentValues;
import android.content.Context;
import android.content.Intent;
import android.database.Cursor;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.provider.MediaStore;
import android.util.Base64;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.WindowManager;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Locale;
public class ImageSetUtils {
public static final int CODE_SETHDIMG_ALNUM = 572;
public static final int CODE_SETHDIMG_CAM = 231;
public static final int CODE_CROP_IMG = 318;
public File camImgFile = null;
public File cropImgFile = null;
public void gotoCam(Activity context) {
//获取当前系统的android版本号
int currentApiVersion = android.os.Build.VERSION.SDK_INT;
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault());
String str = dateFormat.format(new Date(System.currentTimeMillis()));
//设置保存拍摄照片路径(DCIM/Camera/Modle_PictureWall_img_20170212_122223.jpg)
//路径默认,若修改则不能保存照片
camImgFile = new File(Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DCIM), "/Camera/LaibaDoctor_img_" + str + ".jpg");
try {
if (camImgFile.exists()) {
camImgFile.delete();