Merge branch 'dev_Memory' into dev_test
# Conflicts: # app/src/main/java/com/shayu/phonelive/AppContext.java # common/src/main/java/com/yunbao/common/glide/ImgLoader.java # dependencies.gradle # live/src/main/java/com/yunbao/live/adapter/UserMoreInfoAdapter.java # live/src/main/java/com/yunbao/live/views/LiveAudienceViewHolder.java # main/src/main/java/com/yunbao/main/activity/ZhuangBanActivity.java # main/src/main/java/com/yunbao/main/adapter/MainListAdapter.java
This commit is contained in:
@@ -36,6 +36,7 @@ import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.dialog.EffectsSettingsDialog;
|
||||
import com.yunbao.common.dialog.LiveChargeDialogFragment;
|
||||
import com.yunbao.common.event.FollowEvent;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.CommonHttpConsts;
|
||||
import com.yunbao.common.http.CommonHttpUtil;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
@@ -474,6 +475,7 @@ public class LiveAudienceActivity extends LiveActivity {
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
super.onDestroy();
|
||||
ImgLoader.clearMemory(this);
|
||||
overridePendingTransition(0, 0);
|
||||
Bus.getOff(this);
|
||||
L.e("LiveAudienceActivity-------onDestroy------->");
|
||||
|
||||
@@ -38,6 +38,7 @@ import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.activity.AbsActivity;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.L;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
@@ -184,7 +185,7 @@ public class ZhuangBanActivity extends AbsActivity {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
svga.setImageDrawable(drawable);
|
||||
svga.setLoops(1);
|
||||
svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -1,36 +1,35 @@
|
||||
package com.yunbao.live.adapter;
|
||||
|
||||
import static android.text.TextUtils.isEmpty;
|
||||
|
||||
import android.content.Context;
|
||||
import android.graphics.drawable.Drawable;
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.core.content.ContextCompat;
|
||||
import androidx.recyclerview.widget.RecyclerView;
|
||||
|
||||
import com.opensource.svgaplayer.SVGADrawable;
|
||||
import com.opensource.svgaplayer.SVGAImageView;
|
||||
import com.opensource.svgaplayer.SVGAParser;
|
||||
import com.opensource.svgaplayer.SVGAVideoEntity;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.common.bean.LevelBean;
|
||||
import com.yunbao.live.bean.LiveUserGiftBean;
|
||||
import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.interfaces.OnItemClickListener;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.bean.LiveUserGiftBean;
|
||||
|
||||
import java.net.MalformedURLException;
|
||||
import java.net.URL;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import static android.text.TextUtils.isEmpty;
|
||||
|
||||
/**
|
||||
* Created by cxf on 2018/10/10.
|
||||
*/
|
||||
@@ -103,7 +102,7 @@ public class LiveUserAdapter extends RecyclerView.Adapter<LiveUserAdapter.Vh> {
|
||||
public Vh(View itemView) {
|
||||
super(itemView);
|
||||
mWrap = (ImageView) itemView.findViewById(R.id.wrap);
|
||||
gift_svga = (SVGAImageView)itemView.findViewById(R.id.gift_svga);
|
||||
gift_svga = (SVGAImageView) itemView.findViewById(R.id.gift_svga);
|
||||
mAvatar = (ImageView) itemView.findViewById(R.id.avatar);
|
||||
mIcon = (ImageView) itemView.findViewById(R.id.icon);
|
||||
mGuardIcon = (ImageView) itemView.findViewById(R.id.guard_icon);
|
||||
@@ -114,37 +113,12 @@ public class LiveUserAdapter extends RecyclerView.Adapter<LiveUserAdapter.Vh> {
|
||||
itemView.setTag(position);
|
||||
|
||||
if (payload == null) {
|
||||
ImgLoader.displayAvatar(mContext, userBean.getAvatar(), mAvatar);
|
||||
LevelBean levelBean = CommonAppConfig.getInstance().getLevel(userBean.getLevel());
|
||||
// if (levelBean != null) {
|
||||
// ImgLoader.display(mContext, levelBean.getThumbIcon(), mIcon);
|
||||
// }
|
||||
ImgLoader.displayAvatar(mContext, userBean.getAvatar(), mAvatar,64,64);
|
||||
// ImageLoadUtils.loadUrl(userBean.getAvatar(),32,32,mAvatar);
|
||||
}
|
||||
int guardType = userBean.getGuardType();
|
||||
// if (guardType == Constants.GUARD_TYPE_NONE) {
|
||||
// if (mIcon.getVisibility() != View.VISIBLE) {
|
||||
// mIcon.setVisibility(View.VISIBLE);
|
||||
// }
|
||||
// if (mGuardIcon.getVisibility() == View.VISIBLE) {
|
||||
// mGuardIcon.setVisibility(View.INVISIBLE);
|
||||
// }
|
||||
// } else {
|
||||
// if (mIcon.getVisibility() == View.VISIBLE) {
|
||||
// mIcon.setVisibility(View.INVISIBLE);
|
||||
// }
|
||||
// if (mGuardIcon.getVisibility() != View.VISIBLE) {
|
||||
// mGuardIcon.setVisibility(View.VISIBLE);
|
||||
// }
|
||||
// if (guardType == Constants.GUARD_TYPE_DAY) {
|
||||
// mGuardIcon.setImageDrawable(mGuardDrawable0);
|
||||
// }else if (guardType == Constants.GUARD_TYPE_MONTH) {
|
||||
// mGuardIcon.setImageDrawable(mGuardDrawable1);
|
||||
// } else if (guardType == Constants.GUARD_TYPE_YEAR) {
|
||||
// mGuardIcon.setImageDrawable(mGuardDrawable2);
|
||||
// }
|
||||
// }
|
||||
if(userBean.getDress()!=null){
|
||||
if(userBean.getDress().getAvatar_frame().contains("svga")) {
|
||||
|
||||
if (userBean.getDress() != null) {
|
||||
if (userBean.getDress().getAvatar_frame().contains("svga")) {
|
||||
|
||||
try {
|
||||
new SVGAParser(mContext).parse(new URL(userBean.getDress().getAvatar_frame()), new SVGAParser.ParseCompletion() {
|
||||
@@ -152,7 +126,7 @@ public class LiveUserAdapter extends RecyclerView.Adapter<LiveUserAdapter.Vh> {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
gift_svga.setImageDrawable(drawable);
|
||||
gift_svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(gift_svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -162,25 +136,10 @@ public class LiveUserAdapter extends RecyclerView.Adapter<LiveUserAdapter.Vh> {
|
||||
} catch (MalformedURLException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}else{
|
||||
ImgLoader.display(mContext,userBean.getDress().getAvatar_frame(), gift_svga);
|
||||
} else {
|
||||
ImgLoader.display(mContext, userBean.getDress().getAvatar_frame(), gift_svga);
|
||||
}
|
||||
}
|
||||
// if (position == 0) {
|
||||
// if (userBean.hasContribution()) {
|
||||
// mWrap.setImageResource(R.mipmap.icon_live_user_list_1);
|
||||
// }
|
||||
// } else if (position == 1) {
|
||||
// if (userBean.hasContribution()) {
|
||||
// mWrap.setImageResource(R.mipmap.icon_live_user_list_2);
|
||||
// }
|
||||
// } else if (position == 2) {
|
||||
// if (userBean.hasContribution()) {
|
||||
// mWrap.setImageResource(R.mipmap.icon_live_user_list_3);
|
||||
// }
|
||||
// } else {
|
||||
// mWrap.setImageDrawable(null);
|
||||
// }
|
||||
}
|
||||
|
||||
}
|
||||
@@ -216,49 +175,6 @@ public class LiveUserAdapter extends RecyclerView.Adapter<LiveUserAdapter.Vh> {
|
||||
}
|
||||
}
|
||||
|
||||
// public void insertItem(LiveUserGiftBean userBean) {
|
||||
// if (userBean == null) {
|
||||
// return;
|
||||
// }
|
||||
// int position = findItemPosition(userBean.getId());
|
||||
// if (position >= 0) {
|
||||
// return;
|
||||
// }
|
||||
// int size = mList.size();
|
||||
// mList.add(userBean);
|
||||
// notifyDataSetChanged();
|
||||
//// notifyItemInserted(size);
|
||||
// }
|
||||
//
|
||||
// public void insertList(List<LiveUserGiftBean> list) {
|
||||
// for (int i = 0; i < list.size(); i++) {
|
||||
// }
|
||||
// if (mList != null && list != null && list.size() > 0) {
|
||||
// int position = mList.size();
|
||||
// mList.addAll(list);
|
||||
// notifyItemRangeInserted(position, mList.size());
|
||||
// }
|
||||
// }
|
||||
|
||||
// /**
|
||||
// * 守护信息发生变化
|
||||
// */
|
||||
// public void onGuardChanged(String uid, int guardType) {
|
||||
// if (!isEmpty(uid)) {
|
||||
// for (int i = 0, size = mList.size(); i < size; i++) {
|
||||
// LiveUserGiftBean bean = mList.get(i);
|
||||
// if (uid.equals(bean.getId())) {
|
||||
// if (bean.getGuardType() != guardType) {
|
||||
// Log.d("onGuardChanged",""+bean.getGuardType());
|
||||
// bean.setGuardType(guardType);
|
||||
// notifyItemChanged(i, Constants.PAYLOAD);
|
||||
// }
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
public void clear() {
|
||||
if (mList != null) {
|
||||
mList.clear();
|
||||
|
||||
@@ -21,6 +21,7 @@ import com.yunbao.common.bean.LevelBean;
|
||||
import com.yunbao.common.dialog.AbsDialogFragment;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.utils.CommonIconUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
import com.yunbao.live.bean.MicUserBean;
|
||||
@@ -96,7 +97,7 @@ public class UserMicInfoAdapter extends RefreshAdapter<MicUserBean> {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
gift_svga.setImageDrawable(drawable);
|
||||
gift_svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(gift_svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -30,6 +30,7 @@ import com.yunbao.common.bean.UserBean;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.utils.CommonIconUtil;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
@@ -261,7 +262,7 @@ public class UserMoreInfoAdapter extends RefreshAdapter<UserBean> {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
gift_svga.setImageDrawable(drawable);
|
||||
gift_svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(gift_svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -31,6 +31,7 @@ import com.yunbao.common.glide.ImgLoader;
|
||||
import com.yunbao.common.http.HttpCallback;
|
||||
import com.yunbao.common.utils.CommonIconUtil;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.activity.LiveActivity;
|
||||
import com.yunbao.live.bean.HotBean;
|
||||
@@ -218,7 +219,7 @@ public class LiveGiveHotDialogFragment extends AbsDialogFragment {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
viewHolder.gift_svga.setImageDrawable(drawable);
|
||||
viewHolder.gift_svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(viewHolder.gift_svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -36,6 +36,7 @@ import com.yunbao.common.interfaces.CommonCallback;
|
||||
import com.yunbao.common.utils.CommonIconUtil;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.utils.WordUtil;
|
||||
import com.yunbao.live.R;
|
||||
@@ -368,7 +369,7 @@ public class LiveUserDialogFragment extends AbsDialogFragment implements View.On
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
gift_svga.setImageDrawable(drawable);
|
||||
gift_svga.startAnimation();
|
||||
SVGAViewUtils.playEndClear(gift_svga);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -39,6 +39,7 @@ import com.yunbao.common.interfaces.CommonCallback;
|
||||
import com.yunbao.common.manager.IMLoginManager;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.GifCacheUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ScreenDimenUtil;
|
||||
import com.yunbao.live.R;
|
||||
import com.yunbao.live.bean.LiveChatBean;
|
||||
@@ -310,7 +311,7 @@ public class LiveEnterRoomAnimPresenter {
|
||||
SVGARect rect = svgaVideoEntity.getVideoSize();
|
||||
enter_room_svg_small.setVideoItem(svgaVideoEntity);
|
||||
enter_room_svg_small.setLoops(1);
|
||||
enter_room_svg_small.startAnimation();
|
||||
SVGAViewUtils.playEndClear(enter_room_svg_small);
|
||||
}
|
||||
} else {
|
||||
if (mSVGImageView != null) {
|
||||
@@ -318,7 +319,6 @@ public class LiveEnterRoomAnimPresenter {
|
||||
SVGARect rect = svgaVideoEntity.getVideoSize();
|
||||
mSVGImageView.setVideoItem(svgaVideoEntity);
|
||||
mSVGImageView.setLoops(1);
|
||||
mSVGImageView.startAnimation();
|
||||
mSVGImageView.setCallback(new SVGACallback() {
|
||||
@Override
|
||||
public void onPause() {
|
||||
@@ -343,6 +343,7 @@ public class LiveEnterRoomAnimPresenter {
|
||||
|
||||
}
|
||||
});
|
||||
mSVGImageView.startAnimation();
|
||||
}
|
||||
}
|
||||
mIsAnimating = false;
|
||||
|
||||
@@ -592,6 +592,7 @@ public class LiveGiftAnimPresenter {
|
||||
if (mHandler != null) {
|
||||
mHandler.sendEmptyMessageDelayed(WHAT_GIF, diffTime);
|
||||
}
|
||||
mSVGAImageView.clear();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -614,6 +615,7 @@ public class LiveGiftAnimPresenter {
|
||||
if (diffTime < 0) {
|
||||
diffTime = 0;
|
||||
}
|
||||
mSVGAImageViewFront.clear();
|
||||
// if (mHandler != null) {
|
||||
// mHandler.sendEmptyMessageDelayed(WHAT_GIF_All_SERVER, diffTime);
|
||||
// }
|
||||
@@ -1224,7 +1226,6 @@ public class LiveGiftAnimPresenter {
|
||||
resizeSvgaImageView(rect.getWidth(), rect.getHeight());
|
||||
mSvgaPlayTime = System.currentTimeMillis();
|
||||
mSVGAImageView.setVideoItem(svgaVideoEntity);
|
||||
mSVGAImageView.startAnimation();
|
||||
mSVGAImageView.setCallback(new SVGACallback() {
|
||||
@Override
|
||||
public void onPause() {
|
||||
@@ -1254,6 +1255,7 @@ public class LiveGiftAnimPresenter {
|
||||
|
||||
}
|
||||
});
|
||||
mSVGAImageView.startAnimation();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,14 @@ import android.widget.RelativeLayout;
|
||||
import android.widget.TextView;
|
||||
import android.widget.ViewFlipper;
|
||||
|
||||
import com.opensource.svgaplayer.SVGACallback;
|
||||
import com.opensource.svgaplayer.SVGADrawable;
|
||||
import com.opensource.svgaplayer.SVGAImageView;
|
||||
import com.opensource.svgaplayer.SVGAParser;
|
||||
import com.opensource.svgaplayer.SVGAVideoEntity;
|
||||
import com.yunbao.common.CommonAppConfig;
|
||||
import com.yunbao.common.Constants;
|
||||
import com.yunbao.common.bean.MsgModel;
|
||||
import com.yunbao.common.bean.NewPeopleInfo;
|
||||
import com.yunbao.common.event.MessageIMEvent;
|
||||
import com.yunbao.common.glide.ImgLoader;
|
||||
@@ -35,6 +37,7 @@ import com.yunbao.common.http.HttpClient;
|
||||
import com.yunbao.common.manager.imrongcloud.MessageIMManager;
|
||||
import com.yunbao.common.utils.Bus;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.ToastUtil;
|
||||
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||
@@ -123,7 +126,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
svga_new_user_gif.setImageDrawable(drawable);
|
||||
svga_new_user_gif.startAnimation();
|
||||
SVGAViewUtils.playEndClear(svga_new_user_gif);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -142,7 +145,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
svga_new_user_double.setImageDrawable(drawable);
|
||||
svga_new_user_double.setBackgroundResource(R.mipmap.black_bg);
|
||||
svga_new_user_double.startAnimation();
|
||||
SVGAViewUtils.playEndClear(svga_new_user_double);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -159,7 +162,7 @@ public class LiveAudienceViewHolder extends AbsLiveViewHolder {
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
svga_new_user_follow.setImageDrawable(drawable);
|
||||
svga_new_user_follow.startAnimation();
|
||||
SVGAViewUtils.playEndClear(svga_new_user_follow);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -74,6 +74,7 @@ import com.yunbao.common.utils.DeviceUtils;
|
||||
import com.yunbao.common.utils.DialogUitl;
|
||||
import com.yunbao.common.utils.DpUtil;
|
||||
import com.yunbao.common.utils.RouteUtil;
|
||||
import com.yunbao.common.utils.SVGAViewUtils;
|
||||
import com.yunbao.common.utils.ScreenDimenUtil;
|
||||
import com.yunbao.common.utils.SpUtil;
|
||||
import com.yunbao.common.utils.StringUtil;
|
||||
@@ -369,7 +370,7 @@ public class LiveRoomViewHolder extends AbsViewHolder implements View.OnClickLis
|
||||
public void onComplete(SVGAVideoEntity videoItem) {
|
||||
SVGADrawable drawable = new SVGADrawable(videoItem);
|
||||
mSVGAImageView.setImageDrawable(drawable);
|
||||
mSVGAImageView.startAnimation();
|
||||
SVGAViewUtils.playEndClear(mSVGAImageView);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -240,7 +240,8 @@ public class PortraitLiveManager implements LivePlayListener, SocketMessageListe
|
||||
|
||||
mLiveRyLinkMicPkPresenter = new LiveRyLinkMicPkPresenter(mContext, mLivePlayViewHolder, false, null);
|
||||
//直播间背景
|
||||
ImgLoader.displayBlurLive(mContext, mLiveBean.getAvatar(), liveBack);
|
||||
ImgLoader.displayBlurLive(mContext, mLiveBean.getAvatar(), liveBack,400,600);
|
||||
//ImageLoadUtils.loadUrlToBlur(mContext,mLiveBean.getAvatar(),400,600,liveBack);
|
||||
mask.setVisibility(View.VISIBLE);
|
||||
mLivePlayViewHolder.setCover(data.getThumb());
|
||||
mLivePlayViewHolder.play(data.getPull());
|
||||
|
||||
Reference in New Issue
Block a user