1、修改包的图片

2、修改房间的所有进出方式
This commit is contained in:
2025-09-19 02:28:02 +08:00
parent 4e0ea44f21
commit fc544229fe
1003 changed files with 2512 additions and 1966 deletions

View File

@@ -50,7 +50,8 @@ dependencies {
implementation project(':modulecircle')
implementation project(':modulevocal')
implementation project(':modulenews')
implementation project(':moduleroom')
// implementation project(':moduleroom')
implementation project(':moduleactivity')
testImplementation libs.junit
androidTestImplementation libs.ext.junit

View File

@@ -10,7 +10,7 @@
<activity
android:name=".activity.MainActivity"
android:exported="true"
android:configChanges="fontScale"
/>
</application>

View File

@@ -27,6 +27,7 @@ import com.blankj.utilcode.util.FragmentUtils;
import com.blankj.utilcode.util.LogUtils;
import com.blankj.utilcode.util.ToastUtils;
import com.bumptech.glide.Glide;
import com.example.moduleactivity.RoomManager;
import com.example.modulecircle.fragment.CircleFragment;
import com.example.modulenews.fragment.NewsFragment;
import com.example.modulevocal.fragment.VocalRangeFragment;
@@ -97,11 +98,6 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
}
@Override
protected void onSaveInstanceState(@NonNull Bundle outState) {
super.onSaveInstanceState(outState);
}
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
@@ -109,6 +105,37 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
index = -1;
// ServiceUtils.startService(EMqttService.class);
checkTab(getIntent().getIntExtra("tab", -1));
if (getOnBackPressedDispatcher() != null) {
getOnBackPressedDispatcher().addCallback(this, new androidx.activity.OnBackPressedCallback(true) {
@Override
public void handleOnBackPressed() {
// 拦截返回键,显示退出对话框而不是直接退出
// 检查是否有正在播放的房间
if (CommonAppContext.getInstance().isPlaying) {
// 如果有正在播放的房间,直接退出应用
finish();
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
return;
}
// 如果没有正在播放的房间,使用原来的逻辑
if (!isExit) {
isExit = true;
ToastUtils.showShort("再按一次退出应用");
// 延迟2秒重置标记
mHandler.postDelayed(() -> isExit = false, 2000);
} else {
// 退出应用
finish();
android.os.Process.killProcess(android.os.Process.myPid());
System.exit(0);
}
}
});
}
}
@Override
protected void initData() {
@@ -159,6 +186,8 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
.withString("roomId", CommonAppContext.getInstance().playId)
.withFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP)
.navigation();
// RoomManager.instance( CommonAppContext.getInstance()).joinRoomWithRoomId(CommonAppContext.getInstance().playId, true);
return;
}
@@ -262,14 +291,11 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
mBinding.ll.setVisibility(View.INVISIBLE);
CommonAppContext.getInstance().isShow = false;
CommonAppContext.getInstance().isPlaying = false;
// if (RoomActivity.sDestroied) {
// MvpPre.quitRoom(CommonAppContext.getInstance().playId);
// } else {
EventBus.getDefault().post(new RoomOutEvent());
// }
} else if (id == R.id.riv) {
String roomId = CommonAppContext.getInstance().playId;
if (!TextUtils.isEmpty(roomId)) {
// RoomManager.instance( CommonAppContext.getInstance()).joinRoomWithRoomId(roomId, true);
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("form", "首页").withString("roomId", roomId).navigation();
}
} else if (id == R.id.iv_shouchl) {//首充
@@ -392,20 +418,13 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
// 2. 应用应该显示房间
// 3. 应用是从后台恢复的(通过检查 CommonAppContext 状态)
return CommonAppContext.getInstance().isPlaying
&& CommonAppContext.getInstance().isShow
;
&& CommonAppContext.getInstance().isShow;
}
@Override
protected void onResume() {
super.onResume();
// if (isTaskRoot() &&CommonAppContext.getInstance().isPlaying && CommonAppContext.getInstance().isShow) {
// ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS).withString("form", "首页").withString("roomId", CommonAppContext.getInstance().playId).navigation();
// return;
// }
// 修改判断条件:不仅检查 isTaskRoot还要检查是否是从后台恢复
if (shouldRestoreRoom()) {
ARouter.getInstance().build(ARouteConstants.ROOM_DETAILS)
@@ -413,6 +432,7 @@ public class MainActivity extends BaseMvpActivity<HomePresenter, ActivityMainBin
.withString("roomId", CommonAppContext.getInstance().playId)
.withFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK)
.navigation();
// RoomManager.instance( CommonAppContext.getInstance()).joinRoomWithRoomId(CommonAppContext.getInstance().playId, true);
return;
}