// Path: utilslibrary/src/main/java/com/devin/UtilManager.java
// public class UtilManager {
// 
//     private static Context mContext;
// 
//     /**
//      * 初始化工具类集合
//      * @param context  context
//      */
//     public static void init(Context context) {
//         mContext = context.getApplicationContext();
//     }
// 
//     public static Context getContext() {
//         return mContext;
//     }
// }


import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.graphics.RectF;
import android.media.ExifInterface;
import android.net.Uri;
import android.support.annotation.Nullable;
import android.text.TextUtils;
import android.util.Base64;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.target.Target;
import com.devin.UtilManager;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;
     * 根据路径查看是否是图片 支持（.jpg", ".jpeg", ".png", ".bmp"）
     *
     * @param path 路径
     * @return true 是，false 不是。
     */
    private boolean isImageFile(String path) {
        if (TextUtils.isEmpty(path)) {
            return false;
        }
        String[] imgSuffix = {".jpg", ".jpeg", ".png", ".bmp"};
        for (String str : imgSuffix) {
            if (path.toLowerCase().endsWith(str)) {
                return true;
            }
        }
        return false;
    }


    /**
     * 下载并保存图片（需子线程调用）
     *
     * @param url      图片url
     * @param dirPath  存储路径
     * @param fileName 图片名称
     * @return 下载结果
     */
    public static boolean downloadImg(String url, String dirPath, String fileName) {

        try {
// Path: utilslibrary/src/main/java/com/devin/UtilManager.java
// public class UtilManager {
// 
//     private static Context mContext;
// 
//     /**
//      * 初始化工具类集合
//      * @param context  context
//      */
//     public static void init(Context context) {
//         mContext = context.getApplicationContext();
//     }
// 
//     public static Context getContext() {
//         return mContext;
//     }
// }


// Path: utilslibrary/src/main/java/com/devin/util/BitmapUtils.java
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffXfermode;
import android.graphics.Rect;
import android.graphics.RectF;
import android.media.ExifInterface;
import android.net.Uri;
import android.support.annotation.Nullable;
import android.text.TextUtils;
import android.util.Base64;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.target.Target;
import com.devin.UtilManager;
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileOutputStream;

     * 根据路径查看是否是图片 支持（.jpg", ".jpeg", ".png", ".bmp"）
     *
     * @param path 路径
     * @return true 是，false 不是。
     */
    private boolean isImageFile(String path) {
        if (TextUtils.isEmpty(path)) {
            return false;
        }
        String[] imgSuffix = {".jpg", ".jpeg", ".png", ".bmp"};
        for (String str : imgSuffix) {
            if (path.toLowerCase().endsWith(str)) {
                return true;
            }
        }
        return false;
    }


    /**
     * 下载并保存图片（需子线程调用）
     *
     * @param url      图片url
     * @param dirPath  存储路径
     * @param fileName 图片名称
     * @return 下载结果
     */
    public static boolean downloadImg(String url, String dirPath, String fileName) {

        try {
            File imgFile = Glide.with(UtilManager.getContext()).load(url).downloadOnly(Target.SIZE_ORIGINAL, Target.SIZE_ORIGINAL).get();