思特奇智慧酒店云平台 v0.0.5版本的 MD5 值为:dedb172bb322639d79d7e0e26262fb5c

以下内容为反编译后的 ImageAdapter.java 源代码,内容仅作参考


package com.sitech.oncon.weex;

import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.os.Looper;
import android.text.TextUtils;
import android.util.Base64;
import android.widget.ImageView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.request.BaseRequestOptions;
import com.bumptech.glide.request.RequestOptions;
import com.sitech.oncon.R;
import com.taobao.weex.WXSDKInstance;
import com.taobao.weex.WXSDKManager;
import com.taobao.weex.adapter.IWXImgLoaderAdapter;
import com.taobao.weex.common.WXImageStrategy;
import com.taobao.weex.dom.WXImageQuality;
public class ImageAdapter implements IWXImgLoaderAdapter {
    public static final String TAG = "ImageAdapter";

    public Bitmap base64ToBitmap(String str) {
        byte[] decode = Base64.decode(str, 2);
        return BitmapFactory.decodeByteArray(decode, 0, decode.length);
    }

    private void recordImgLoadAction(String str) {
        WXSDKInstance wXSDKInstance = WXSDKManager.getInstance().getAllInstanceMap().get(str);
        if (wXSDKInstance == null || wXSDKInstance.isDestroy()) {
            return;
        }
        wXSDKInstance.getApmForInstance().actionLoadImg();
    }

    private void recordImgLoadResult(String str, boolean z, String str2) {
        WXSDKInstance wXSDKInstance = WXSDKManager.getInstance().getAllInstanceMap().get(str);
        if (wXSDKInstance == null || wXSDKInstance.isDestroy()) {
            return;
        }
        wXSDKInstance.getApmForInstance().actionLoadImgResult(z, str2);
    }

    @Override
    public void setImage(final String str, final ImageView imageView, WXImageQuality wXImageQuality, WXImageStrategy wXImageStrategy) {
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                if (!TextUtils.isEmpty(str) && imageView.getLayoutParams().width > 0 && imageView.getLayoutParams().height > 0) {
                    if (str.startsWith("data:image/jpg;base64,")) {
                        imageView.setImageBitmap(ImageAdapter.this.base64ToBitmap(str.replace("data:image/jpg;base64,", "")));
                    } else if (str.startsWith("data:image/png;base64,")) {
                        imageView.setImageBitmap(ImageAdapter.this.base64ToBitmap(str.replace("data:image/png;base64,", "")));
                    } else {
                        Glide.with(imageView.getContext()).load(str).apply((BaseRequestOptions<?>) new RequestOptions().placeholder(R.drawable.defaultpic)).into(imageView);
                    }
                }
            }
        };
        if (Thread.currentThread() == Looper.getMainLooper().getThread()) {
            runnable.run();
        } else {
            WXSDKManager.getInstance().postOnUiThread(runnable, 0L);
        }
    }
}