app_base/src/main/java/com/android/app_base/utils/Utils.java
@@ -1,8 +1,16 @@
package com.android.app_base.utils;
import android.animation.ValueAnimator;
import android.app.ActivityManager;
import android.app.Application;
import android.content.Context;
import android.content.Intent;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
@@ -10,8 +18,10 @@
import android.view.View;
import android.widget.TextView;
import androidx.core.content.ContextCompat;
import androidx.core.content.FileProvider;
import com.android.app_base.base.BaseApplication;
import com.blankj.utilcode.util.LogUtils;
import java.io.File;
@@ -37,7 +47,7 @@
     */
    public static void dropExpand(View view,int initialHeight , int targetHeight) {
        ValueAnimator animator = ValueAnimator.ofInt(initialHeight,targetHeight);
        animator.setDuration(500);
        animator.setDuration(400);
        animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {
@@ -56,7 +66,7 @@
     */
    public static void pullCollapse(View view,int initialHeight, int targetHeight) {
        ValueAnimator animator = ValueAnimator.ofInt(initialHeight, targetHeight);
        animator.setDuration(500);
        animator.setDuration(400);
        animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
            @Override
            public void onAnimationUpdate(ValueAnimator animation) {
@@ -214,7 +224,7 @@
        Intent intent = new Intent(Intent.ACTION_VIEW);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
            intent.setFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
            Uri contentUri = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".fileprovider", file);
            Uri contentUri = FileProvider.getUriForFile(context, context.getApplicationContext().getPackageName() + ".file-provider", file);
            intent.setDataAndType(contentUri, "application/vnd.android.package-archive");
        } else {
//            Uri uri = Uri.parse("file://" + file.toString());
@@ -225,4 +235,50 @@
        context.startActivity(intent);
    }
    /**
     * 判断是否有网络
     */
    public static boolean checkNetwork() {
//        if (context == null) {
//            return false;
//        }
//        ConnectivityManager mConnectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
//        if (mConnectivityManager == null) {
//            return false;
//        }
//        NetworkInfo mNetworkInfo = mConnectivityManager.getActiveNetworkInfo();
//        return mNetworkInfo != null && mNetworkInfo.isAvailable();
        Application application = BaseApplication.getInstance();
        if (application != null) {
            ConnectivityManager manager = ContextCompat.getSystemService(application, ConnectivityManager.class);
            if (manager != null) {
                NetworkInfo info = manager.getActiveNetworkInfo();
                // 判断网络是否连接
                if (info == null || !info.isConnected()) {
                    return false;
                }
            }
        }
        return true;
    }
    /**
     * 把 view 转换成 drawable
     */
    public static Drawable convertViewToDrawable(View view) {
        view.measure(View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED),
                View.MeasureSpec.makeMeasureSpec(0, View.MeasureSpec.UNSPECIFIED));
        int width = view.getMeasuredWidth();
        int height = view.getMeasuredHeight();
        Bitmap bitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);
        Canvas canvas = new Canvas(bitmap);
        view.layout(0, 0, width, height);
        view.draw(canvas);
        return new BitmapDrawable(view.getResources(), bitmap);
    }
}