思特奇智慧酒店云平台 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);
}
}
}