MainActivity整理
This commit is contained in:
@@ -16,7 +16,6 @@ import android.util.SparseArray;
|
||||
import android.view.KeyEvent;
|
||||
import android.view.MotionEvent;
|
||||
import android.view.View;
|
||||
import android.view.ViewStub;
|
||||
import android.view.animation.LinearInterpolator;
|
||||
import android.widget.LinearLayout;
|
||||
import android.widget.TextView;
|
||||
@@ -25,16 +24,9 @@ import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
import androidx.fragment.app.Fragment;
|
||||
import androidx.fragment.app.FragmentTransaction;
|
||||
import androidx.lifecycle.Observer;
|
||||
import androidx.lifecycle.ViewModelProvider;
|
||||
|
||||
import com.netease.nim.uikit.StatusBarUtil;
|
||||
import com.netease.nim.uikit.api.NimUIKit;
|
||||
import com.netease.nim.uikit.api.model.contact.ContactEventListener;
|
||||
import com.netease.nim.uikit.api.model.session.SessionCustomization;
|
||||
import com.netease.nim.uikit.api.model.session.SessionEventListener;
|
||||
import com.netease.nim.uikit.business.session.actions.BaseAction;
|
||||
import com.netease.nim.uikit.business.session.actions.ImageAction;
|
||||
import com.netease.nim.uikit.common.util.log.LogUtil;
|
||||
import com.netease.nim.uikit.common.util.string.StringUtil;
|
||||
import com.netease.nim.uikit.impl.cache.NimUserInfoCache;
|
||||
@@ -42,7 +34,6 @@ import com.netease.nimlib.sdk.NIMClient;
|
||||
import com.netease.nimlib.sdk.RequestCallbackWrapper;
|
||||
import com.netease.nimlib.sdk.chatroom.model.ChatRoomKickOutEvent;
|
||||
import com.netease.nimlib.sdk.msg.constant.SessionTypeEnum;
|
||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||
import com.netease.nimlib.sdk.msg.model.RecentContact;
|
||||
import com.netease.nimlib.sdk.team.TeamService;
|
||||
import com.netease.nimlib.sdk.team.constant.TeamMessageNotifyTypeEnum;
|
||||
@@ -53,16 +44,12 @@ import com.tencent.bugly.crashreport.CrashReport;
|
||||
import com.trello.rxlifecycle3.android.ActivityEvent;
|
||||
import com.yizhuan.erban.application.ActivityStackManager;
|
||||
import com.yizhuan.erban.avroom.activity.AVRoomActivity;
|
||||
import com.yizhuan.erban.avroom.firstcharge.FirstChargePrizeDialog;
|
||||
import com.yizhuan.erban.avroom.ktv.KtvMusicManager;
|
||||
import com.yizhuan.erban.avroom.newuserchargegift.NewUserChargeGiftDialog;
|
||||
import com.yizhuan.erban.avroom.newuserchargegift.NewUserChargePrizeDialog;
|
||||
import com.yizhuan.erban.base.BaseMvpActivity;
|
||||
import com.yizhuan.erban.common.widget.CircleImageView;
|
||||
import com.yizhuan.erban.common.widget.DragLayout;
|
||||
import com.yizhuan.erban.community.dynamic.view.DynamicDetailActivity;
|
||||
import com.yizhuan.erban.community.holder.DynamicSysHolder;
|
||||
import com.yizhuan.erban.community.im.WorldDynamicShareViewHolder;
|
||||
import com.yizhuan.erban.community.publish.view.PublishActivity;
|
||||
import com.yizhuan.erban.community.square.SquareFragment;
|
||||
import com.yizhuan.erban.family.view.activity.FamilyHomeActivity;
|
||||
@@ -75,48 +62,23 @@ import com.yizhuan.erban.home.fragment.MeFragment;
|
||||
import com.yizhuan.erban.home.presenter.MainPresenter;
|
||||
import com.yizhuan.erban.home.view.IMainView;
|
||||
import com.yizhuan.erban.home.widget.AnchorCardView;
|
||||
import com.yizhuan.erban.luckymoney.viewholder.LuckyMoneyMsgViewHolder;
|
||||
import com.yizhuan.erban.luckymoney.viewholder.LuckyMoneyTipsViewHolder;
|
||||
import com.yizhuan.erban.main.helper.NoticationsUiHelper;
|
||||
import com.yizhuan.erban.miniworld.activity.MiniWorldGuestPageActivity;
|
||||
import com.yizhuan.erban.module.Extras;
|
||||
import com.yizhuan.erban.module_hall.HallDataManager;
|
||||
import com.yizhuan.erban.module_hall.secretcode.PwdCodeMgr;
|
||||
import com.yizhuan.erban.public_chat_hall.msg.viewholder.MsgViewHolderAitMe;
|
||||
import com.yizhuan.erban.quick_pass.QuickPassLoginAct;
|
||||
import com.yizhuan.erban.radish.signin.SignDialogTimeManager;
|
||||
import com.yizhuan.erban.service.DaemonService;
|
||||
import com.yizhuan.erban.share.viewholder.InAppSharingMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.im.actions.GiftAction;
|
||||
import com.yizhuan.erban.ui.im.ImInitHelper;
|
||||
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderAudioParty;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderChatHint;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderContent;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderGift;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderHello;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderLevel;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderLottery;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderMatch;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderOnline;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderRedPackage;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderRedPacket;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderSkill;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderText;
|
||||
import com.yizhuan.erban.ui.im.chat.SignInNoticeMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.im.chat.SysMsgV2ViewHolder;
|
||||
import com.yizhuan.erban.ui.im.chat.SysMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.login.BindPhoneActivity;
|
||||
import com.yizhuan.erban.ui.login.fragment.AddUserInfoFragment;
|
||||
import com.yizhuan.erban.ui.patriarch.help.LimitEnterRoomHelper;
|
||||
import com.yizhuan.erban.ui.patriarch.help.PmDialogShowMrg;
|
||||
import com.yizhuan.erban.ui.user.UserInfoActivity;
|
||||
import com.yizhuan.erban.ui.utils.ImageLoadUtils;
|
||||
import com.yizhuan.erban.ui.utils.ImageLoadUtilsV2;
|
||||
import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
|
||||
import com.yizhuan.erban.ui.widget.LevelUpDialog;
|
||||
import com.yizhuan.erban.ui.widget.LivingIconView;
|
||||
import com.yizhuan.erban.ui.widget.MainTabLayout;
|
||||
import com.yizhuan.erban.ui.widget.RecallDialog;
|
||||
import com.yizhuan.erban.utils.CleanLeakUtils;
|
||||
import com.yizhuan.erban.utils.PushMessageHandler;
|
||||
import com.yizhuan.xchat_android_core.Constants;
|
||||
@@ -127,43 +89,14 @@ import com.yizhuan.xchat_android_core.auth.event.KickOutEvent;
|
||||
import com.yizhuan.xchat_android_core.auth.event.LoginEvent;
|
||||
import com.yizhuan.xchat_android_core.auth.event.LogoutEvent;
|
||||
import com.yizhuan.xchat_android_core.channel_page.model.ChannelPageModel;
|
||||
import com.yizhuan.xchat_android_core.community.attachment.DynamicSysAttachment;
|
||||
import com.yizhuan.xchat_android_core.community.event.SquareTaskEvent;
|
||||
import com.yizhuan.xchat_android_core.community.event.UnReadCountEvent;
|
||||
import com.yizhuan.xchat_android_core.community.im.WorldDynamicAttachment;
|
||||
import com.yizhuan.xchat_android_core.home.bean.MainTabType;
|
||||
import com.yizhuan.xchat_android_core.home.event.RefreshHomeDataEvent;
|
||||
import com.yizhuan.xchat_android_core.home.event.VisitorUnreadCountEvent;
|
||||
import com.yizhuan.xchat_android_core.home.model.GameHomeModel;
|
||||
import com.yizhuan.xchat_android_core.home.model.HomeModel;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.AssistantAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CarAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CarveUpGoldThirdLevelAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.ChatHintAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CpInviteAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.GiftAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingFamilyAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingMiniWorldAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingRoomAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingTeamAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LevelUpAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LotteryAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LuckyMoneyAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LuckyMoneyTipsAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.MatchAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NewbieHelloAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NobleAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NoticeAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.OpenRoomNotiAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.OpenSignInAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RedPackageAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RedPacketAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SkillMsgAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SysMsgAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SysMsgV2Attachment;
|
||||
import com.yizhuan.xchat_android_core.initial.InitialModel;
|
||||
import com.yizhuan.xchat_android_core.level.event.CharmLevelUpEvent;
|
||||
import com.yizhuan.xchat_android_core.level.event.LevelUpEvent;
|
||||
import com.yizhuan.xchat_android_core.linked.LinkedModel;
|
||||
import com.yizhuan.xchat_android_core.linked.bean.LinkedInfo;
|
||||
import com.yizhuan.xchat_android_core.manager.AudioEngineManager;
|
||||
@@ -171,17 +104,9 @@ import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
|
||||
import com.yizhuan.xchat_android_core.manager.IMBroadcastManager;
|
||||
import com.yizhuan.xchat_android_core.manager.IMMessageManager;
|
||||
import com.yizhuan.xchat_android_core.manager.RoomEvent;
|
||||
import com.yizhuan.xchat_android_core.miniworld.bean.OpenAudioPartyAttachment;
|
||||
import com.yizhuan.xchat_android_core.patriarch.event.CloseMinRoomEvent;
|
||||
import com.yizhuan.xchat_android_core.patriarch.event.ImPushMsgPmLimitTimeEvent;
|
||||
import com.yizhuan.xchat_android_core.patriarch.event.PmDismissAllLimitDialogEvent;
|
||||
import com.yizhuan.xchat_android_core.pay.bean.ShowCommonWebEvent;
|
||||
import com.yizhuan.xchat_android_core.pay.event.FirstChargeEvent;
|
||||
import com.yizhuan.xchat_android_core.pay.event.NewUserChargeEvent;
|
||||
import com.yizhuan.xchat_android_core.public_chat_hall.attachment.AitMeAttachment;
|
||||
import com.yizhuan.xchat_android_core.recall.bean.CheckLostUserInfo;
|
||||
import com.yizhuan.xchat_android_core.recall.event.CheckLostUserEvent;
|
||||
import com.yizhuan.xchat_android_core.room.bean.AnchorInfo;
|
||||
import com.yizhuan.xchat_android_core.room.bean.RoomInfo;
|
||||
import com.yizhuan.xchat_android_core.statistic.StatisticManager;
|
||||
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol;
|
||||
@@ -204,7 +129,6 @@ import org.greenrobot.eventbus.ThreadMode;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.lang.ref.WeakReference;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
|
||||
@@ -246,34 +170,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
private boolean mResumed = false;
|
||||
@Nullable
|
||||
private Fragment tempFragment = null;
|
||||
private ContactEventListener listener1 = new ContactEventListener() {
|
||||
@Override
|
||||
public void onItemClick(Context context, String account) {
|
||||
NimP2PMessageActivity.start(context, account);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemLongClick(Context context, String account) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAvatarClick(Context context, String account) {
|
||||
UserInfoActivity.Companion.start(MainActivity.this, Long.parseLong(account));
|
||||
}
|
||||
};
|
||||
private SessionEventListener listener = new SessionEventListener() {
|
||||
@Override
|
||||
public void onAvatarClicked(Context context, IMMessage message) {
|
||||
if (message == null) return;
|
||||
UserInfoActivity.Companion.start(MainActivity.this, Long.parseLong(message.getFromAccount()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAvatarLongClicked(Context context, IMMessage message) {
|
||||
|
||||
}
|
||||
};
|
||||
@Nullable
|
||||
private Runnable touchRunnable;
|
||||
|
||||
@@ -334,8 +231,7 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
onParseIntent();
|
||||
updateDatas();
|
||||
updateRoomState();
|
||||
initP2PSessionCustomization();
|
||||
initTeamSessionCustomization();
|
||||
ImInitHelper.get().init();
|
||||
EventBus.getDefault().register(this);
|
||||
otherModelInit();
|
||||
|
||||
@@ -396,82 +292,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
avatarLayout.setVisibility(View.GONE);
|
||||
}
|
||||
|
||||
private void initP2PSessionCustomization() {
|
||||
SessionCustomization sessionCustomization = new SessionCustomization();
|
||||
ArrayList<BaseAction> actions = new ArrayList<>();
|
||||
actions.add(new ImageAction());
|
||||
actions.add(new GiftAction());
|
||||
sessionCustomization.actions = actions;
|
||||
sessionCustomization.withSticker = true;
|
||||
NimUIKit.setCommonP2PSessionCustomization(sessionCustomization);
|
||||
|
||||
// 语音派对
|
||||
NimUIKit.registerMsgItemViewHolder(OpenAudioPartyAttachment.class, MsgViewHolderAudioParty.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(OpenRoomNotiAttachment.class, MsgViewHolderOnline.class);
|
||||
NimUIKit.registerMsgItemViewHolder(GiftAttachment.class, MsgViewHolderGift.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NoticeAttachment.class, MsgViewHolderContent.class);
|
||||
NimUIKit.registerMsgItemViewHolder(RedPacketAttachment.class, MsgViewHolderRedPacket.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NewbieHelloAttachment.class, MsgViewHolderHello.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LotteryAttachment.class, MsgViewHolderLottery.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NobleAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(CarAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(AssistantAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingRoomAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingFamilyAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingMiniWorldAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingTeamAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(SysMsgAttachment.class, SysMsgViewHolder.class);
|
||||
//V2系统消息,废弃23 V1
|
||||
NimUIKit.registerMsgItemViewHolder(SysMsgV2Attachment.class, SysMsgV2ViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LevelUpAttachment.class, MsgViewHolderLevel.class);
|
||||
NimUIKit.registerMsgItemViewHolder(AitMeAttachment.class, MsgViewHolderAitMe.class);
|
||||
NimUIKit.registerMsgItemViewHolder(RedPackageAttachment.class, MsgViewHolderRedPackage.class);
|
||||
//模厅模块
|
||||
HallDataManager.get().mainNimOnCreate();
|
||||
//签到
|
||||
NimUIKit.registerMsgItemViewHolder(OpenSignInAttachment.class, SignInNoticeMsgViewHolder.class);
|
||||
//瓜分钻石 三级
|
||||
NimUIKit.registerMsgItemViewHolder(CarveUpGoldThirdLevelAttachment.class, MsgViewHolderText.class);
|
||||
|
||||
// 社区动态
|
||||
NimUIKit.registerMsgItemViewHolder(DynamicSysAttachment.class, DynamicSysHolder.class); // 动态审核, 违规删除
|
||||
//世界动态分享
|
||||
NimUIKit.registerMsgItemViewHolder(WorldDynamicAttachment.class, WorldDynamicShareViewHolder.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(ChatHintAttachment.class, MsgViewHolderChatHint.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(MatchAttachment.class, MsgViewHolderMatch.class);
|
||||
|
||||
//技能卡
|
||||
NimUIKit.registerMsgItemViewHolder(SkillMsgAttachment.class, MsgViewHolderSkill.class);
|
||||
//CP
|
||||
NimUIKit.registerMsgItemViewHolder(CpInviteAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.setSessionListener(listener);
|
||||
NimUIKit.setContactEventListener(listener1);
|
||||
}
|
||||
|
||||
private void initTeamSessionCustomization() {
|
||||
SessionCustomization sessionCustomization = new SessionCustomization();
|
||||
ArrayList<BaseAction> actions = new ArrayList<>();
|
||||
actions.add(new ImageAction());
|
||||
sessionCustomization.actions = actions;
|
||||
sessionCustomization.withSticker = true;
|
||||
NimUIKit.setCommonTeamSessionCustomization(sessionCustomization);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(LuckyMoneyAttachment.class, LuckyMoneyMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingRoomAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingFamilyAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingMiniWorldAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingTeamAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LuckyMoneyTipsAttachment.class, LuckyMoneyTipsViewHolder.class);
|
||||
//邀请
|
||||
// NimUIKit.registerMsgItemViewHolder(RoomInviteFansAttachment.class, LuckyMoneyTipsViewHolder.class);
|
||||
|
||||
NimUIKit.setSessionListener(listener);
|
||||
NimUIKit.setContactEventListener(listener1);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
@@ -549,13 +369,11 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
anchorCardView = findViewById(R.id.vs_anchor_card);
|
||||
}
|
||||
|
||||
|
||||
private void updateDatas() {
|
||||
mMainTabLayout.setDefaultTabType(mCurrentTabType);
|
||||
handleNimIntent();
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
protected void onNewIntent(Intent intent) {
|
||||
super.onNewIntent(intent);
|
||||
@@ -572,7 +390,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private void onParseIntent() {
|
||||
Intent intent = getIntent();
|
||||
if (intent.hasExtra(EXTRA_APP_QUIT)) {
|
||||
@@ -595,19 +412,13 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
avatarImage.setOnClickListener(this);
|
||||
llDragInfo.setOnClickListener(this);
|
||||
viewClose.setOnClickListener(this);
|
||||
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onDestroy() {
|
||||
CleanLeakUtils.fixInputMethodManagerLeak(MainActivity.this);
|
||||
super.onDestroy();
|
||||
listener = null;
|
||||
listener1 = null;
|
||||
NimUIKit.setSessionListener(null);
|
||||
NimUIKit.setContactEventListener(null);
|
||||
|
||||
ImInitHelper.get().unInit();
|
||||
EventBus.getDefault().unregister(this);
|
||||
stopRoomMinAnim();
|
||||
if (limitEnterRoomHelper != null) {
|
||||
@@ -690,30 +501,12 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onLoadLoginUserInfoEvent(LoadLoginUserInfoEvent event) {
|
||||
//签到弹窗
|
||||
// handleSign();
|
||||
firstLoadedUserInfo();
|
||||
}
|
||||
|
||||
private void handleSign() {
|
||||
//检查是否需要弹 签到框
|
||||
//如果是新用户,因为有资料未完善,所以先不弹签到框
|
||||
UserInfo loginUserInfo = UserModel.get().getCacheLoginUserInfo();
|
||||
if (loginUserInfo == null) {
|
||||
//弹出去绑定用户
|
||||
|
||||
return;
|
||||
}
|
||||
if (!TextUtils.isEmpty(loginUserInfo.getNick()) && !TextUtils.isEmpty(loginUserInfo.getAvatar())) {
|
||||
//noinspection ResultOfMethodCallIgnored
|
||||
SignDialogTimeManager.checkSignDialog(this, false);
|
||||
}
|
||||
}
|
||||
|
||||
public void onLogout() {
|
||||
Logger.e(TAG, "onLogout Success ~~~~");
|
||||
getMvpPresenter().exitRoom();
|
||||
// LoginActivity.start(MainActivity.this);
|
||||
QuickPassLoginAct.start(MainActivity.this);
|
||||
PmDialogShowMrg.get().onLogout();
|
||||
}
|
||||
@@ -760,18 +553,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
mMainTabLayout.setMsgNum(unreadCount);
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveLevelUpActivity(LevelUpEvent event) {
|
||||
if (AvRoomDataManager.get().isSelfGamePlaying()) return;
|
||||
LevelUpDialog.start(this, event.getLevelName(), true);
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveCharmLevelUpActivity(CharmLevelUpEvent event) {
|
||||
if (AvRoomDataManager.get().isSelfGamePlaying()) return;
|
||||
LevelUpDialog.start(this, event.getLevelName(), false);
|
||||
}
|
||||
|
||||
@SuppressLint("CheckResult")
|
||||
private void updateRoomState() {
|
||||
RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo;
|
||||
@@ -866,26 +647,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
DaemonService.stop(MainActivity.this);
|
||||
}
|
||||
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveRecallStatus(CheckLostUserEvent event) {
|
||||
//如果没有获取到当前登录用户的信息,不弹出提示
|
||||
if (UserModel.get().getCacheLoginUserInfo() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
CheckLostUserInfo checkLostUserInfo = (CheckLostUserInfo) event.getData();
|
||||
|
||||
boolean goBackOnce = (boolean) SharedPreferenceUtils.get(RecallDialog.GO_BACK_ONCE, false);
|
||||
|
||||
if (!goBackOnce && !event.isFailed() && checkLostUserInfo.isLostUser() && !checkLostUserInfo.isClaimedAward())
|
||||
RecallDialog.start(this);
|
||||
}
|
||||
|
||||
public boolean isShowMeTab() {
|
||||
return mCurrentTabType == MainTabType.TAB_TYPE_ME;
|
||||
}
|
||||
|
||||
/**
|
||||
* 第一次加载到用户信息
|
||||
*/
|
||||
@@ -1106,11 +867,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
}
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onNewUserChargeEvent(NewUserChargeEvent event) {
|
||||
new NewUserChargePrizeDialog(this, event.getChargeProdTitle(), event.getFirstChargeRewardList()).openDialog();
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理开房限制时长
|
||||
*/
|
||||
@@ -1168,11 +924,6 @@ public class MainActivity extends BaseMvpActivity<IMainView, MainPresenter>
|
||||
checkBindPhone();
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onShowCommonWebEvent(ShowCommonWebEvent event) {
|
||||
CommonWebViewActivity.start(event.getContext(), event.getUrl());
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN, sticky = true)
|
||||
public void onVisitorUnreadCountEvent(VisitorUnreadCountEvent event) {
|
||||
if (mMainTabLayout != null) {
|
||||
|
@@ -4,14 +4,26 @@ import android.app.Activity;
|
||||
|
||||
import com.tencent.bugly.beta.Beta;
|
||||
import com.trello.rxlifecycle3.components.support.RxAppCompatActivity;
|
||||
import com.yizhuan.erban.avroom.newuserchargegift.NewUserChargePrizeDialog;
|
||||
import com.yizhuan.erban.relation.cp.dialog.CpGlobalDialog;
|
||||
import com.yizhuan.erban.ui.webview.CommonWebViewActivity;
|
||||
import com.yizhuan.erban.ui.widget.LevelUpDialog;
|
||||
import com.yizhuan.erban.ui.widget.RecallDialog;
|
||||
import com.yizhuan.erban.ui.widget.lottery_dialog.LotteryDialogManager;
|
||||
import com.yizhuan.erban.vip.VipUpgradeDialog;
|
||||
import com.yizhuan.xchat_android_core.activity.bean.LotteryInfo;
|
||||
import com.yizhuan.xchat_android_core.level.event.CharmLevelUpEvent;
|
||||
import com.yizhuan.xchat_android_core.level.event.LevelUpEvent;
|
||||
import com.yizhuan.xchat_android_core.manager.AvRoomDataManager;
|
||||
import com.yizhuan.xchat_android_core.pay.bean.ShowCommonWebEvent;
|
||||
import com.yizhuan.xchat_android_core.pay.event.NewUserChargeEvent;
|
||||
import com.yizhuan.xchat_android_core.recall.bean.CheckLostUserInfo;
|
||||
import com.yizhuan.xchat_android_core.recall.event.CheckLostUserEvent;
|
||||
import com.yizhuan.xchat_android_core.relation.cp.CpInviteInfo;
|
||||
import com.yizhuan.xchat_android_core.upgrade.event.ImPushUpdateAppEvent;
|
||||
import com.yizhuan.xchat_android_core.user.UserModel;
|
||||
import com.yizhuan.xchat_android_core.utils.ActivityUtil;
|
||||
import com.yizhuan.xchat_android_core.utils.SharedPreferenceUtils;
|
||||
import com.yizhuan.xchat_android_core.vip.VipUpgradeEvent;
|
||||
|
||||
import org.greenrobot.eventbus.EventBus;
|
||||
@@ -82,6 +94,51 @@ public class GlobalHandleManager {
|
||||
CpGlobalDialog.newInstance(entity, activity).openDialog();
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onNewUserChargeEvent(NewUserChargeEvent event) {
|
||||
Activity activity = getActivity();
|
||||
if (activity == null) return;
|
||||
new NewUserChargePrizeDialog(activity, event.getChargeProdTitle(), event.getFirstChargeRewardList()).openDialog();
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onShowCommonWebEvent(ShowCommonWebEvent event) {
|
||||
CommonWebViewActivity.start(event.getContext(), event.getUrl());
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveRecallStatus(CheckLostUserEvent event) {
|
||||
Activity activity = getActivity();
|
||||
if (activity == null) return;
|
||||
//如果没有获取到当前登录用户的信息,不弹出提示
|
||||
if (UserModel.get().getCacheLoginUserInfo() == null) {
|
||||
return;
|
||||
}
|
||||
|
||||
CheckLostUserInfo checkLostUserInfo = (CheckLostUserInfo) event.getData();
|
||||
|
||||
boolean goBackOnce = (boolean) SharedPreferenceUtils.get(RecallDialog.GO_BACK_ONCE, false);
|
||||
|
||||
if (!goBackOnce && !event.isFailed() && checkLostUserInfo.isLostUser() && !checkLostUserInfo.isClaimedAward())
|
||||
RecallDialog.start(activity);
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveLevelUpActivity(LevelUpEvent event) {
|
||||
Activity activity = getActivity();
|
||||
if (activity == null) return;
|
||||
if (AvRoomDataManager.get().isSelfGamePlaying()) return;
|
||||
LevelUpDialog.start(activity, event.getLevelName(), true);
|
||||
}
|
||||
|
||||
@Subscribe(threadMode = ThreadMode.MAIN)
|
||||
public void onReceiveCharmLevelUpActivity(CharmLevelUpEvent event) {
|
||||
Activity activity = getActivity();
|
||||
if (activity == null) return;
|
||||
if (AvRoomDataManager.get().isSelfGamePlaying()) return;
|
||||
LevelUpDialog.start(activity, event.getLevelName(), false);
|
||||
}
|
||||
|
||||
private static final class Helper {
|
||||
private static final GlobalHandleManager INSTANCE = new GlobalHandleManager();
|
||||
}
|
||||
|
195
app/src/main/java/com/yizhuan/erban/ui/im/ImInitHelper.java
Normal file
195
app/src/main/java/com/yizhuan/erban/ui/im/ImInitHelper.java
Normal file
@@ -0,0 +1,195 @@
|
||||
package com.yizhuan.erban.ui.im;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import com.netease.nim.uikit.api.NimUIKit;
|
||||
import com.netease.nim.uikit.api.model.contact.ContactEventListener;
|
||||
import com.netease.nim.uikit.api.model.session.SessionCustomization;
|
||||
import com.netease.nim.uikit.api.model.session.SessionEventListener;
|
||||
import com.netease.nim.uikit.business.session.actions.BaseAction;
|
||||
import com.netease.nim.uikit.business.session.actions.ImageAction;
|
||||
import com.netease.nimlib.sdk.msg.model.IMMessage;
|
||||
import com.yizhuan.erban.community.holder.DynamicSysHolder;
|
||||
import com.yizhuan.erban.community.im.WorldDynamicShareViewHolder;
|
||||
import com.yizhuan.erban.luckymoney.viewholder.LuckyMoneyMsgViewHolder;
|
||||
import com.yizhuan.erban.luckymoney.viewholder.LuckyMoneyTipsViewHolder;
|
||||
import com.yizhuan.erban.module_hall.HallDataManager;
|
||||
import com.yizhuan.erban.public_chat_hall.msg.viewholder.MsgViewHolderAitMe;
|
||||
import com.yizhuan.erban.share.viewholder.InAppSharingMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.im.actions.GiftAction;
|
||||
import com.yizhuan.erban.ui.im.avtivity.NimP2PMessageActivity;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderAudioParty;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderChatHint;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderContent;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderGift;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderHello;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderLevel;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderLottery;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderMatch;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderOnline;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderRedPackage;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderRedPacket;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderSkill;
|
||||
import com.yizhuan.erban.ui.im.chat.MsgViewHolderText;
|
||||
import com.yizhuan.erban.ui.im.chat.SignInNoticeMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.im.chat.SysMsgV2ViewHolder;
|
||||
import com.yizhuan.erban.ui.im.chat.SysMsgViewHolder;
|
||||
import com.yizhuan.erban.ui.user.UserInfoActivity;
|
||||
import com.yizhuan.xchat_android_core.community.attachment.DynamicSysAttachment;
|
||||
import com.yizhuan.xchat_android_core.community.im.WorldDynamicAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.AssistantAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CarAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CarveUpGoldThirdLevelAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.ChatHintAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.CpInviteAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.GiftAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingFamilyAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingMiniWorldAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingRoomAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.InAppSharingTeamAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LevelUpAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LotteryAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LuckyMoneyAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.LuckyMoneyTipsAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.MatchAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NewbieHelloAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NobleAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.NoticeAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.OpenRoomNotiAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.OpenSignInAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RedPackageAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.RedPacketAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SkillMsgAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SysMsgAttachment;
|
||||
import com.yizhuan.xchat_android_core.im.custom.bean.SysMsgV2Attachment;
|
||||
import com.yizhuan.xchat_android_core.miniworld.bean.OpenAudioPartyAttachment;
|
||||
import com.yizhuan.xchat_android_core.public_chat_hall.attachment.AitMeAttachment;
|
||||
|
||||
import java.util.ArrayList;
|
||||
|
||||
public class ImInitHelper {
|
||||
private final ContactEventListener listener1 = new ContactEventListener() {
|
||||
@Override
|
||||
public void onItemClick(Context context, String account) {
|
||||
NimP2PMessageActivity.start(context, account);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onItemLongClick(Context context, String account) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAvatarClick(Context context, String account) {
|
||||
UserInfoActivity.Companion.start(context, Long.parseLong(account));
|
||||
}
|
||||
};
|
||||
private final SessionEventListener listener = new SessionEventListener() {
|
||||
@Override
|
||||
public void onAvatarClicked(Context context, IMMessage message) {
|
||||
if (message == null) return;
|
||||
UserInfoActivity.Companion.start(context, Long.parseLong(message.getFromAccount()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAvatarLongClicked(Context context, IMMessage message) {
|
||||
|
||||
}
|
||||
};
|
||||
|
||||
private ImInitHelper() {
|
||||
|
||||
}
|
||||
|
||||
public static ImInitHelper get() {
|
||||
return Helper.INSTANCE;
|
||||
}
|
||||
|
||||
public void init() {
|
||||
initP2PSessionCustomization();
|
||||
initTeamSessionCustomization();
|
||||
}
|
||||
|
||||
public void unInit(){
|
||||
NimUIKit.setSessionListener(null);
|
||||
NimUIKit.setContactEventListener(null);
|
||||
}
|
||||
|
||||
private void initP2PSessionCustomization() {
|
||||
SessionCustomization sessionCustomization = new SessionCustomization();
|
||||
ArrayList<BaseAction> actions = new ArrayList<>();
|
||||
actions.add(new ImageAction());
|
||||
actions.add(new GiftAction());
|
||||
sessionCustomization.actions = actions;
|
||||
sessionCustomization.withSticker = true;
|
||||
NimUIKit.setCommonP2PSessionCustomization(sessionCustomization);
|
||||
|
||||
// 语音派对
|
||||
NimUIKit.registerMsgItemViewHolder(OpenAudioPartyAttachment.class, MsgViewHolderAudioParty.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(OpenRoomNotiAttachment.class, MsgViewHolderOnline.class);
|
||||
NimUIKit.registerMsgItemViewHolder(GiftAttachment.class, MsgViewHolderGift.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NoticeAttachment.class, MsgViewHolderContent.class);
|
||||
NimUIKit.registerMsgItemViewHolder(RedPacketAttachment.class, MsgViewHolderRedPacket.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NewbieHelloAttachment.class, MsgViewHolderHello.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LotteryAttachment.class, MsgViewHolderLottery.class);
|
||||
NimUIKit.registerMsgItemViewHolder(NobleAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(CarAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(AssistantAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingRoomAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingFamilyAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingMiniWorldAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingTeamAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(SysMsgAttachment.class, SysMsgViewHolder.class);
|
||||
//V2系统消息,废弃23 V1
|
||||
NimUIKit.registerMsgItemViewHolder(SysMsgV2Attachment.class, SysMsgV2ViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LevelUpAttachment.class, MsgViewHolderLevel.class);
|
||||
NimUIKit.registerMsgItemViewHolder(AitMeAttachment.class, MsgViewHolderAitMe.class);
|
||||
NimUIKit.registerMsgItemViewHolder(RedPackageAttachment.class, MsgViewHolderRedPackage.class);
|
||||
//模厅模块
|
||||
HallDataManager.get().mainNimOnCreate();
|
||||
//签到
|
||||
NimUIKit.registerMsgItemViewHolder(OpenSignInAttachment.class, SignInNoticeMsgViewHolder.class);
|
||||
//瓜分钻石 三级
|
||||
NimUIKit.registerMsgItemViewHolder(CarveUpGoldThirdLevelAttachment.class, MsgViewHolderText.class);
|
||||
|
||||
// 社区动态
|
||||
NimUIKit.registerMsgItemViewHolder(DynamicSysAttachment.class, DynamicSysHolder.class); // 动态审核, 违规删除
|
||||
//世界动态分享
|
||||
NimUIKit.registerMsgItemViewHolder(WorldDynamicAttachment.class, WorldDynamicShareViewHolder.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(ChatHintAttachment.class, MsgViewHolderChatHint.class);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(MatchAttachment.class, MsgViewHolderMatch.class);
|
||||
|
||||
//技能卡
|
||||
NimUIKit.registerMsgItemViewHolder(SkillMsgAttachment.class, MsgViewHolderSkill.class);
|
||||
//CP
|
||||
NimUIKit.registerMsgItemViewHolder(CpInviteAttachment.class, MsgViewHolderText.class);
|
||||
NimUIKit.setSessionListener(listener);
|
||||
NimUIKit.setContactEventListener(listener1);
|
||||
}
|
||||
|
||||
private void initTeamSessionCustomization() {
|
||||
SessionCustomization sessionCustomization = new SessionCustomization();
|
||||
ArrayList<BaseAction> actions = new ArrayList<>();
|
||||
actions.add(new ImageAction());
|
||||
sessionCustomization.actions = actions;
|
||||
sessionCustomization.withSticker = true;
|
||||
NimUIKit.setCommonTeamSessionCustomization(sessionCustomization);
|
||||
|
||||
NimUIKit.registerMsgItemViewHolder(LuckyMoneyAttachment.class, LuckyMoneyMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingRoomAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingFamilyAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingMiniWorldAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(InAppSharingTeamAttachment.class, InAppSharingMsgViewHolder.class);
|
||||
NimUIKit.registerMsgItemViewHolder(LuckyMoneyTipsAttachment.class, LuckyMoneyTipsViewHolder.class);
|
||||
|
||||
NimUIKit.setSessionListener(listener);
|
||||
NimUIKit.setContactEventListener(listener1);
|
||||
}
|
||||
|
||||
private static final class Helper {
|
||||
private static final ImInitHelper INSTANCE = new ImInitHelper();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user