From 18f6246252838088c8aee29163324f82ac66b6ea Mon Sep 17 00:00:00 2001 From: huangjian Date: Wed, 15 Dec 2021 16:26:40 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=B8=B8=E6=88=8F=E6=A8=A1=E5=BC=8F=E5=8E=BB?= =?UTF-8?q?=E6=8E=89=E5=A4=B4=E9=A5=B0=202.=E6=B8=B8=E6=88=8F=E4=B8=AD?= =?UTF-8?q?=E5=8E=BB=E6=8E=89=E5=8D=87=E7=BA=A7=E5=BC=B9=E7=AA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/yizhuan/erban/MainActivity.java | 72 +++++------ .../erban/avroom/activity/AVRoomActivity.java | 6 + .../erban/avroom/fragment/GameRoomFragment.kt | 7 +- .../avroom/fragment/HomePartyFragment.java | 16 ++- .../yizhuan/erban/avroom/game/GameDelegate.kt | 3 + .../erban/avroom/widget/GiftEffectView.java | 2 +- .../erban/avroom/widget/GiftV2View.java | 8 +- .../erban/avroom/widget/RoomEffectView.java | 6 +- .../com/yizhuan/erban/base/BaseActivity.java | 119 +++++++++--------- .../drawable-xhdpi/icon_erban_grid_empty.png | Bin 13078 -> 0 bytes .../layout/fragment_chatroom_game_main.xml | 4 +- .../main/res/layout/item_erban_grid_empty.xml | 2 +- app/src/main/res/layout/item_micro_game.xml | 24 ---- .../main/res/layout/item_micro_game_mini.xml | 7 -- .../manager/AvRoomDataManager.java | 7 ++ 15 files changed, 135 insertions(+), 148 deletions(-) delete mode 100644 app/src/main/res/drawable-xhdpi/icon_erban_grid_empty.png diff --git a/app/src/main/java/com/yizhuan/erban/MainActivity.java b/app/src/main/java/com/yizhuan/erban/MainActivity.java index e26f423cb..0f75ec44b 100644 --- a/app/src/main/java/com/yizhuan/erban/MainActivity.java +++ b/app/src/main/java/com/yizhuan/erban/MainActivity.java @@ -112,6 +112,7 @@ 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.erban.utils.UserUtils; import com.yizhuan.xchat_android_core.Constants; import com.yizhuan.xchat_android_core.UriProvider; import com.yizhuan.xchat_android_core.auth.AuthModel; @@ -211,12 +212,11 @@ import static com.yizhuan.xchat_android_core.channel_page.model.ChannelPageModel public class MainActivity extends BaseMvpActivity implements MainTabLayout.OnTabClickListener, IMainView, View.OnClickListener { - private static final String TAG = "MainActivity"; - - private static final String EXTRA_APP_QUIT = "APP_QUIT"; public static final String MSG_TAB = "msgTab"; public static final String GAME_TAB = "gameTab"; - + private static final String TAG = "MainActivity"; + private static final String EXTRA_APP_QUIT = "APP_QUIT"; + private final SparseArray fragmentArray = new SparseArray<>(); private DragLayout avatarLayout; private TextView tvName;//最小化窗口名称 private TextView tvId;//最小化窗口ID @@ -224,10 +224,8 @@ public class MainActivity extends BaseMvpActivity private LinearLayout llDragInfo; private LivingIconView userLivingView; private View viewClose; - private MainTabLayout mMainTabLayout; private int mCurrentMainPosition = MainTabLayout.MAIN_TAB_POS_HOME; - /** * 房间最小化动画,换成属性动画,原先的补间动画影响了activity的生命周期 */ @@ -239,7 +237,34 @@ public class MainActivity extends BaseMvpActivity private HomeViewModel homeViewModel; @Nullable private Fragment tempFragment = null; - private final SparseArray fragmentArray = new SparseArray<>(); + 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) { + + } + }; { fragmentArray.put(MainTabLayout.MAIN_TAB_POS_HOME, new HomeFragment()); @@ -435,37 +460,6 @@ public class MainActivity extends BaseMvpActivity NimUIKit.setContactEventListener(listener1); } - 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) { - - } - }; - - @Override protected void onResume() { super.onResume(); @@ -721,11 +715,13 @@ public class MainActivity extends BaseMvpActivity @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); } diff --git a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java index 4fcab9ae1..554d4dc2e 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/activity/AVRoomActivity.java @@ -56,6 +56,7 @@ import com.yizhuan.erban.common.widget.CircleImageView; import com.yizhuan.erban.common.widget.CustomImageSpan; import com.yizhuan.erban.common.widget.dialog.DialogManager; import com.yizhuan.erban.home.adapter.FragmentViewPagerAdapter; +import com.yizhuan.erban.ui.login.AddUserInfoActivity; import com.yizhuan.erban.ui.patriarch.help.LimitEnterRoomHelper; import com.yizhuan.erban.ui.pay.ChargeActivity; import com.yizhuan.erban.ui.user.UserInfoActivity; @@ -68,6 +69,7 @@ import com.yizhuan.erban.ui.widget.dialog.AllServiceGiftLevelThreeDialog; import com.yizhuan.erban.ui.widget.dialog.AllServiceGiftLevelTwoDialog; import com.yizhuan.erban.ui.widget.dialog.MonsterDialog; import com.yizhuan.erban.ui.widget.marqueeview.Utils; +import com.yizhuan.erban.utils.UserUtils; import com.yizhuan.xchat_android_core.Constants; import com.yizhuan.xchat_android_core.DemoCache; import com.yizhuan.xchat_android_core.auth.AuthModel; @@ -1138,6 +1140,10 @@ public class AVRoomActivity extends BaseMvpActivity() @SuppressLint("CheckResult") override fun initiate() { + //游戏模式暂时不需要这个 + PlayerModel.get().stop() //如果不需要开麦,并且还没有权限的情况下,重置状态为需要去打开麦克风 if (!AvRoomDataManager.get().mIsNeedOpenMic && !isHavingMicPermissions) { AvRoomDataManager.get().mIsNeedOpenMic = true @@ -671,12 +674,12 @@ class GameRoomFragment() : BaseMvpFragment() } override fun onDestroyView() { + gameDelegate.onDestroy() super.onDestroyView() releaseView() } override fun onDestroy() { - gameDelegate.onDestroy() mDisposable?.dispose() mDisposable = null EventBus.getDefault().unregister(this) @@ -1036,7 +1039,7 @@ class GameRoomFragment() : BaseMvpFragment() override fun onSendMsgSuccess(msg: String?) { inputEdit.setText("") msg?.let { - if (AvRoomDataManager.get().isGamePlaying(AuthModel.get().currentUid)) { + if (AvRoomDataManager.get().isSelfGamePlaying) { gameDelegate.hitTheMark(msg) } } diff --git a/app/src/main/java/com/yizhuan/erban/avroom/fragment/HomePartyFragment.java b/app/src/main/java/com/yizhuan/erban/avroom/fragment/HomePartyFragment.java index 5bc7c6383..bb9c5fb43 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/fragment/HomePartyFragment.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/fragment/HomePartyFragment.java @@ -231,13 +231,13 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi gameMainBinding.tvCurrGame.setOnClickListener(v -> { if (gameMainBinding.rvGame.getVisibility() == View.VISIBLE) { gameMainBinding.rvGame.setVisibility(View.GONE); - gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type); + gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type_below); } else { if (AvRoomDataManager.get().isGamePlaying()) { SingleToastUtil.showToast("游戏中不可以切换游戏或玩法!"); } else { gameMainBinding.rvGame.setVisibility(View.VISIBLE); - gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type_below); + gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type); } } }); @@ -257,6 +257,7 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi mgId = JavaUtil.str2long(gameInfo.getMgId()); } gameMainBinding.rvGame.setVisibility(View.GONE); + gameMainBinding.ivChangeGameArrow.setImageResource(R.drawable.ic_room_arrow_type_below); OpenRoomHelper.updateRoomInfo( getBaseActivity(), AvRoomDataManager.get().mCurrentRoomInfo, @@ -265,6 +266,8 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi false); } }); + } else { + gameMainBinding.llChangeGame.setVisibility(View.GONE); } } @@ -388,6 +391,11 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi .replace(R.id.container, roomFragment) .commitAllowingStateLoss(); + if (AvRoomDataManager.get().isRoomOwner() && currentRoomInfo.getIsPermitRoom() != 1) { + gameMainBinding.llChangeGame.setVisibility(View.VISIBLE); + } else { + gameMainBinding.llChangeGame.setVisibility(View.GONE); + } gameMainBinding.setRoomInfo(currentRoomInfo); updateHasAnimationEffect(); roomTitle.setText(RegexUtil.getPrintableString(currentRoomInfo.getTitle())); @@ -539,7 +547,7 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi ButtonItem buttonItem1 = new ButtonItem("退出房间", new ButtonItem.OnClickListener() { @Override public void onClick() { - if (AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + if (AvRoomDataManager.get().isSelfGamePlaying()) { getDialogManager().showOkCancelDialog("游戏中退出房间默认逃跑,确定进行此操作?", false, () -> ((AVRoomActivity) getActivity()).toBack()); return; @@ -578,7 +586,7 @@ public class HomePartyFragment extends AbsRoomFragment implements View.OnClickLi ButtonItem buttonItem2 = new ButtonItem("最小化房间", new ButtonItem.OnClickListener() { @Override public void onClick() { - if (AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + if (AvRoomDataManager.get().isSelfGamePlaying()) { getDialogManager().showOkCancelDialog("游戏中最小化房间默认逃跑,确定进行此操作?", false, () -> ((AVRoomActivity) getActivity()).toBack()); return; diff --git a/app/src/main/java/com/yizhuan/erban/avroom/game/GameDelegate.kt b/app/src/main/java/com/yizhuan/erban/avroom/game/GameDelegate.kt index a78a7bd1b..5d3d97f2c 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/game/GameDelegate.kt +++ b/app/src/main/java/com/yizhuan/erban/avroom/game/GameDelegate.kt @@ -191,6 +191,7 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId: * @param keyWord */ private fun notifySelfTextHit(keyWord: String?, msg: String) { + LogUtils.d("notifySelfTextHit") try { //状态名称 val state: String = SudMGPAPPState.APP_COMMON_SELF_TEXT_HIT @@ -638,6 +639,8 @@ class GameDelegate(val activity: Activity, val container: FrameLayout, var mgId: } fun onDestroy() { + notifySelfInState(false) + updateMyMicQueue(GameStatus.STATUS_NOT_JOIN) iSudFSTAPP?.destroyMG() } diff --git a/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftEffectView.java b/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftEffectView.java index 8badd4d17..9451440b2 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftEffectView.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftEffectView.java @@ -182,7 +182,7 @@ public class GiftEffectView extends RelativeLayout implements SVGACallback { private void drawSvgaEffect(String url) throws MalformedURLException { if (!AvRoomDataManager.get().mIsNeedGiftEffect || - AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + AvRoomDataManager.get().isSelfGamePlaying()) { return; } SVGAParser.Companion.shareParser().decodeFromURL(new URL(url), new SVGAParser.ParseCompletion() { diff --git a/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftV2View.java b/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftV2View.java index 866f4efa9..2c22c4a75 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftV2View.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/widget/GiftV2View.java @@ -168,7 +168,7 @@ public class GiftV2View extends FrameLayout implements GiftEffectView.GiftEffect private void drawMagicAnimation(List magicReceivedInfos) { if (!AvRoomDataManager.get().mIsNeedGiftEffect || - AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + AvRoomDataManager.get().isSelfGamePlaying()) { return; } @@ -302,7 +302,7 @@ public class GiftV2View extends FrameLayout implements GiftEffectView.GiftEffect int totalCoin = 0; if (AvRoomDataManager.get().mIsNeedGiftEffect && - !AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + !AvRoomDataManager.get().isSelfGamePlaying()) { SVGAImageView imageView = playLuckyBagAnim(svgaUrl); handler.postDelayed(() -> { removeView(imageView); @@ -601,7 +601,7 @@ public class GiftV2View extends FrameLayout implements GiftEffectView.GiftEffect private void drawMagicView(Point senderPoint, Point receivePoint, MagicReceivedInfo magicReceivedInfo) { if (!AvRoomDataManager.get().mIsNeedGiftEffect || - AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + AvRoomDataManager.get().isSelfGamePlaying()) { return; } @@ -671,7 +671,7 @@ public class GiftV2View extends FrameLayout implements GiftEffectView.GiftEffect private void drawGiftView(Point senderPoint, Point receivePoint, GiftReceiveInfo giftReceiveInfo) { if (!AvRoomDataManager.get().mIsNeedGiftEffect || - AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + AvRoomDataManager.get().isSelfGamePlaying()) { return; } if (giftReceiveInfo == null) { diff --git a/app/src/main/java/com/yizhuan/erban/avroom/widget/RoomEffectView.java b/app/src/main/java/com/yizhuan/erban/avroom/widget/RoomEffectView.java index 35870fc60..96161107b 100644 --- a/app/src/main/java/com/yizhuan/erban/avroom/widget/RoomEffectView.java +++ b/app/src/main/java/com/yizhuan/erban/avroom/widget/RoomEffectView.java @@ -674,7 +674,7 @@ public class RoomEffectView extends FrameLayout { && userInfo.getCarInfo().isUsing() && userInfo.getCarInfo().getStatus() == CarInfo.STATUS_USER_CAN_USE) { if (AvRoomDataManager.get().mIsNeedGiftEffect && - !AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + !AvRoomDataManager.get().isSelfGamePlaying()) { mCarEffectList.add(userInfo.getCarInfo().getEffect()); } // 非贵族人员,进来后要播放座驾动画 @@ -704,7 +704,7 @@ public class RoomEffectView extends FrameLayout { } else { if (TextUtils.isEmpty(effect)) return; if (AvRoomDataManager.get().mIsNeedGiftEffect && - !AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + !AvRoomDataManager.get().isSelfGamePlaying()) { mCarEffectList.add(effect); } if (!binding.roomCarSvga.isAnimating() && !isSvgaPlaying) { @@ -722,7 +722,7 @@ public class RoomEffectView extends FrameLayout { private void playCarSvagEnterRoom(String effect) { if (TextUtils.isEmpty(effect)) return; if (!AvRoomDataManager.get().mIsNeedGiftEffect || - AvRoomDataManager.get().isGamePlaying(AuthModel.get().getCurrentUid())) { + AvRoomDataManager.get().isSelfGamePlaying()) { return; } isSvgaPlaying = true; diff --git a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java index e2e2e07c0..8a628f4db 100644 --- a/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java +++ b/app/src/main/java/com/yizhuan/erban/base/BaseActivity.java @@ -119,12 +119,23 @@ public abstract class BaseActivity extends RxAppCompatActivity implements IDataStatus, ConnectiveChangedReceiver.ConnectiveChangedListener, DialogManagerInterface { - private DialogManager mDialogManager; + /** + * -------------------------------------------------- + * -------------------------数据状态状态相关------------- + * -------------------------------------------------- + */ + + protected static final String STATUS_TAG = "STATUS_TAG"; + private final RxPermissions rxPermissions = new RxPermissions(this); protected TitleBar mTitleBar; protected DefaultToolBar mToolBar; protected CompositeDisposable mCompositeDisposable; - private BroadcastObserver broadcastObserver; protected Context context; + protected volatile GrabApprenticesNoticeDialog dialog; + private DialogManager mDialogManager; + private BroadcastObserver broadcastObserver; + private OpenNobleGlobalNoticeDialog mNoticeDialog; + private boolean isShowingChargeDialog; @Override protected void onCreate(Bundle savedInstanceState) { @@ -242,7 +253,6 @@ public abstract class BaseActivity extends RxAppCompatActivity return false; } - /** * 设置沉浸式状态栏 */ @@ -454,6 +464,13 @@ public abstract class BaseActivity extends RxAppCompatActivity return null; } + /** + * 网络连接变化 + */ + /** + * 网络连接变化 + */ + /** * @param fragmentName Fragment.class.getName() */ @@ -469,7 +486,6 @@ public abstract class BaseActivity extends RxAppCompatActivity return null; } - protected void updateBottomBar(boolean isShow) { } @@ -515,12 +531,6 @@ public abstract class BaseActivity extends RxAppCompatActivity //GlideApp.with(this).pauseRequests(); } - /** - * 网络连接变化 - */ - /** - * 网络连接变化 - */ /** * wifi 转 2G/3G/4G */ @@ -566,15 +576,6 @@ public abstract class BaseActivity extends RxAppCompatActivity return UIUtils.checkActivityValid(this); } - - /** - * -------------------------------------------------- - * -------------------------数据状态状态相关------------- - * -------------------------------------------------- - */ - - protected static final String STATUS_TAG = "STATUS_TAG"; - @Override public View.OnClickListener getLoadListener() { return new View.OnClickListener() { @@ -616,7 +617,6 @@ public abstract class BaseActivity extends RxAppCompatActivity showReload(0, bgColor); } - @Override public void showReload() { showReload(0, 0); @@ -863,9 +863,6 @@ public abstract class BaseActivity extends RxAppCompatActivity SingleToastUtil.showToast(toast); } - - private final RxPermissions rxPermissions = new RxPermissions(this); - @SuppressLint("CheckResult") public void checkPermission(PermissionActivity.CheckPermListener listener, int resString, String... mPerms) { /** @@ -950,7 +947,9 @@ public abstract class BaseActivity extends RxAppCompatActivity break; case CUSTOM_MSG_RED_PACKAGE: if (baseProtocol.getSecond() == CUSTOM_MSG_SUB_RED_PACKAGE_RECEIVE_ALL_DIAMOND) { - if (this instanceof AddUserInfoActivity || UserUtils.getUserInfo() == null) + if (this instanceof AddUserInfoActivity || + UserUtils.getUserInfo() == null || + AvRoomDataManager.get().isSelfGamePlaying()) return; RedPackageNotifyInfo notifyInfo = new Gson().fromJson(String.valueOf(baseProtocol.getData()), RedPackageNotifyInfo.class); RoomInfo roomInfo = AvRoomDataManager.get().mCurrentRoomInfo; @@ -965,43 +964,6 @@ public abstract class BaseActivity extends RxAppCompatActivity } } - private OpenNobleGlobalNoticeDialog mNoticeDialog; - - private static class BroadcastObserver implements Observer { - private final WeakReference mReference; - - BroadcastObserver(BaseActivity baseMvpActivity) { - mReference = new WeakReference<>(baseMvpActivity); - } - - @Override - public void onEvent(BroadcastMessage broadcastMessage) { - if (broadcastMessage != null) { - String contentStr = broadcastMessage.getContent(); - Logger.i("全局广播:" + contentStr); - if (TextUtils.isEmpty(contentStr)) return; - BaseActivity baseMvpActivity = mReference.get(); - if (baseMvpActivity == null) return; - if (baseMvpActivity.isValid()) { - JSONObject jsonObject; - try { - jsonObject = JSON.parseObject(contentStr); - } catch (Exception e) { - jsonObject = null; - } - if (jsonObject == null) return; - if (jsonObject.containsKey("body")) { - String body = jsonObject.getString("body"); - if (TextUtils.isEmpty(body)) return; - baseMvpActivity.onReceivedNimBroadcastMessage(body); - } - } - } - } - } - - protected volatile GrabApprenticesNoticeDialog dialog; - public void onGrabApprenticesEvent(GrabApprenticesEvent event) { if (!isTopActivity()) return; if (dialog != null && dialog.isAdded()) { @@ -1060,8 +1022,6 @@ public abstract class BaseActivity extends RxAppCompatActivity return true; } - private boolean isShowingChargeDialog; - private void onNeedCharge() { if (isShowingChargeDialog) { return; @@ -1133,4 +1093,37 @@ public abstract class BaseActivity extends RxAppCompatActivity }, context); } + private static class BroadcastObserver implements Observer { + private final WeakReference mReference; + + BroadcastObserver(BaseActivity baseMvpActivity) { + mReference = new WeakReference<>(baseMvpActivity); + } + + @Override + public void onEvent(BroadcastMessage broadcastMessage) { + if (broadcastMessage != null) { + String contentStr = broadcastMessage.getContent(); + Logger.i("全局广播:" + contentStr); + if (TextUtils.isEmpty(contentStr)) return; + BaseActivity baseMvpActivity = mReference.get(); + if (baseMvpActivity == null) return; + if (baseMvpActivity.isValid()) { + JSONObject jsonObject; + try { + jsonObject = JSON.parseObject(contentStr); + } catch (Exception e) { + jsonObject = null; + } + if (jsonObject == null) return; + if (jsonObject.containsKey("body")) { + String body = jsonObject.getString("body"); + if (TextUtils.isEmpty(body)) return; + baseMvpActivity.onReceivedNimBroadcastMessage(body); + } + } + } + } + } + } \ No newline at end of file diff --git a/app/src/main/res/drawable-xhdpi/icon_erban_grid_empty.png b/app/src/main/res/drawable-xhdpi/icon_erban_grid_empty.png deleted file mode 100644 index 4a1b97ff4d765616ddcd0b1d8fe80a5af3aaefc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13078 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 J<)V;){{#1W*>V5? diff --git a/app/src/main/res/layout/fragment_chatroom_game_main.xml b/app/src/main/res/layout/fragment_chatroom_game_main.xml index 6aa659ced..125a941b5 100644 --- a/app/src/main/res/layout/fragment_chatroom_game_main.xml +++ b/app/src/main/res/layout/fragment_chatroom_game_main.xml @@ -158,6 +158,7 @@ diff --git a/app/src/main/res/layout/item_erban_grid_empty.xml b/app/src/main/res/layout/item_erban_grid_empty.xml index 53b9e994d..b6c1d8825 100644 --- a/app/src/main/res/layout/item_erban_grid_empty.xml +++ b/app/src/main/res/layout/item_erban_grid_empty.xml @@ -23,7 +23,7 @@ android:layout_height="match_parent" app:riv_corner_radius="@dimen/dp_12" android:scaleType="fitXY" - android:src="@drawable/icon_erban_grid_empty" /> + android:src="@drawable/default_cover" /> diff --git a/app/src/main/res/layout/item_micro_game.xml b/app/src/main/res/layout/item_micro_game.xml index 2c7b2906c..1b5aa0a9f 100644 --- a/app/src/main/res/layout/item_micro_game.xml +++ b/app/src/main/res/layout/item_micro_game.xml @@ -52,30 +52,6 @@ android:visibility="gone" tools:visibility="visible" /> - - - - - - - - -