diff --git a/.gitignore b/.gitignore index aa724b77..e4019f40 100644 --- a/.gitignore +++ b/.gitignore @@ -1,15 +1,9 @@ +.idea/ *.iml -.gradle -/local.properties -/.idea/caches -/.idea/libraries -/.idea/modules.xml -/.idea/workspace.xml -/.idea/navEditor.xml -/.idea/assetWizardSettings.xml -.DS_Store -/build -/captures -.externalNativeBuild -.cxx +build/ local.properties +.gradle/ +.externalNativeBuild/ +.DS_Store +*.dm +*.log \ No newline at end of file diff --git a/.idea/.gitignore b/.idea/.gitignore deleted file mode 100644 index 26d33521..00000000 --- a/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/.idea/vcs.xml b/.idea/vcs.xml index 94a25f7f..73354269 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/app/build.gradle b/app/build.gradle index 22d00d55..7f38f5ff 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -66,19 +66,19 @@ android { // // 测试版配置 beta { - dimension "environment" - // 测试版包名:基础包名 + .beta(com.example.myapp.beta) - applicationIdSuffix ".beta" - // 测试版版本名:1.0-beta - versionNameSuffix "-beta" - - // 【测试版应用名称】动态生成带标识的名称 - resValue "string", "app_name", "羽声-测试版" - - // 【测试版图标】替换为测试专用图标 - manifestPlaceholders = [ - appIcon: "@mipmap/ic_launcher_app_bat" // 需在main/res/mipmap放置该图标 - ] +// dimension "environment" +// // 测试版包名:基础包名 + .beta(com.example.myapp.beta) +// applicationIdSuffix ".beta" +// // 测试版版本名:1.0-beta +// versionNameSuffix "-beta" +// +// // 【测试版应用名称】动态生成带标识的名称 +// resValue "string", "app_name", "羽声-测试版" +// +// // 【测试版图标】替换为测试专用图标 +// manifestPlaceholders = [ +// appIcon: "@mipmap/ic_launcher_app_bat" // 需在main/res/mipmap放置该图标 +// ] } } diff --git a/app/src/main/java/com/qxcm/qxlive/PasswordLoginActivity.java b/app/src/main/java/com/qxcm/qxlive/PasswordLoginActivity.java index be958384..7d78ff95 100644 --- a/app/src/main/java/com/qxcm/qxlive/PasswordLoginActivity.java +++ b/app/src/main/java/com/qxcm/qxlive/PasswordLoginActivity.java @@ -408,7 +408,7 @@ public class PasswordLoginActivity extends BaseMvpActivity + + + + + + userMusicVolumeMap = new HashMap<>(); + private Map userPlayoutVolumeMap = new HashMap<>(); + private Map userPlayoutBzMap = new HashMap<>(); + private String currentUserId; + + private VolumeManager() {} + + public static VolumeManager getInstance() { + if (instance == null) { + synchronized (VolumeManager.class) { + if (instance == null) { + instance = new VolumeManager(); + } + } + } + return instance; + } + + public void setCurrentUserId(String userId) { + this.currentUserId = userId; + } + + public void saveCurrentVolumes(int musicVolume, int playoutVolume) { + if (currentUserId != null) { + userMusicVolumeMap.put(currentUserId, musicVolume); + userPlayoutVolumeMap.put(currentUserId, playoutVolume); + } + } + public void clearCurrentVolumes() { + if (currentUserId != null) { + userMusicVolumeMap.remove(currentUserId); + userPlayoutVolumeMap.remove(currentUserId); + } + userPlayoutBzMap.clear(); + } + + public void saveBz(String userId, boolean bz){ + userPlayoutBzMap.clear(); + userPlayoutBzMap.put(userId, bz); + } + + public boolean getBz(String userId){ + Boolean bz = userPlayoutBzMap.get(userId); + if (bz == null) { + bz = true; // 默认值原唱 false 伴奏 + } + return bz; + } + + public int[] getUserVolumes(String userId) { + Integer musicVolume = userMusicVolumeMap.get(userId); + Integer playoutVolume = userPlayoutVolumeMap.get(userId); + + if (musicVolume == null) { + musicVolume = 100; // 默认值 + } + if (playoutVolume == null) { + playoutVolume = 50; // 默认值 + } + + return new int[]{musicVolume, playoutVolume}; + } +} + diff --git a/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentEnum.java b/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentEnum.java index 23120b9b..a5afa0f2 100644 --- a/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentEnum.java +++ b/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentEnum.java @@ -49,7 +49,7 @@ public enum EnvironmentEnum { private final String mqttUrl;//MQTT服务器地址 private final String H5Url;//h5地址 - private final int shelf;//是否上架,0:平台更新,1:上架,发布到对应的应用商城 + private final int shelf;//是否上架,0:平台更新,1:上架,发布到对应的应用商城,上架的初始是没有趣味的,需要点击6次才可以打开趣味 EnvironmentEnum(String serverUrl, String ALI_AUTH_KEY, String ossEndPoint, String ossaAcessKeyId, String ossAccessKeySecret, String ossBucketName, String ossBaseUrl, String wxAppId, diff --git a/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentPrefs.java b/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentPrefs.java index a1d591a3..6c124b81 100644 --- a/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentPrefs.java +++ b/moduleUtil/src/main/java/com/xscm/moduleutil/utils/config/EnvironmentPrefs.java @@ -30,26 +30,6 @@ public class EnvironmentPrefs { // 获取当前选择的环境,默认根据构建变体决定 public EnvironmentEnum getSelectedEnvironment() { -// // 检查是否是debug版本(开发版本) -// if (BuildConfig.DEBUG) { -// return EnvironmentEnum.TEST; -// } -// -// // 检查flavor类型 -// if ("dev".equals(BuildConfig.FLAVOR)) { -// return EnvironmentEnum.TEST; -// } -// -// // 检查包名判断是否为开发版本 -// try { -// String packageName = CommonAppContext.getInstance().getPackageName(); -// if (packageName.contains(".test") || packageName.contains(".dev")) { -// return EnvironmentEnum.TEST; -// } -// } catch (Exception e) { -// // 忽略异常 -// } - // 默认使用生产环境 String envName = sharedPreferences.getString(KEY_ENV, EnvironmentEnum.PRODUCTION.name()); try { diff --git a/moduleUtil/src/main/res/mipmap-hdpi/accompany_off.webp b/moduleUtil/src/main/res/mipmap-hdpi/accompany_off.webp new file mode 100644 index 00000000..9c75fd1d Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/accompany_off.webp differ diff --git a/moduleUtil/src/main/res/mipmap-hdpi/accompany_on.webp b/moduleUtil/src/main/res/mipmap-hdpi/accompany_on.webp new file mode 100644 index 00000000..8d12720b Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/accompany_on.webp differ diff --git a/moduleUtil/src/main/res/mipmap-hdpi/icon_liang.webp b/moduleUtil/src/main/res/mipmap-hdpi/icon_liang.webp new file mode 100644 index 00000000..f429f26d Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/icon_liang.webp differ diff --git a/moduleUtil/src/main/res/mipmap-hdpi/muisc_reward.webp b/moduleUtil/src/main/res/mipmap-hdpi/muisc_reward.webp new file mode 100644 index 00000000..b24e1b2c Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/muisc_reward.webp differ diff --git a/moduleUtil/src/main/res/mipmap-hdpi/muisc_switch.webp b/moduleUtil/src/main/res/mipmap-hdpi/muisc_switch.webp new file mode 100644 index 00000000..8885a78d Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/muisc_switch.webp differ diff --git a/moduleUtil/src/main/res/mipmap-hdpi/muisc_tyt.webp b/moduleUtil/src/main/res/mipmap-hdpi/muisc_tyt.webp new file mode 100644 index 00000000..726606da Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-hdpi/muisc_tyt.webp differ diff --git a/moduleUtil/src/main/res/mipmap-mdpi/muisc_reward.png b/moduleUtil/src/main/res/mipmap-mdpi/muisc_reward.png deleted file mode 100644 index d4a32b6e..00000000 Binary files a/moduleUtil/src/main/res/mipmap-mdpi/muisc_reward.png and /dev/null differ diff --git a/moduleUtil/src/main/res/mipmap-mdpi/muisc_switch.png b/moduleUtil/src/main/res/mipmap-mdpi/muisc_switch.png deleted file mode 100644 index 1694e3c1..00000000 Binary files a/moduleUtil/src/main/res/mipmap-mdpi/muisc_switch.png and /dev/null differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/accompany_off.webp b/moduleUtil/src/main/res/mipmap-xhdpi/accompany_off.webp new file mode 100644 index 00000000..8065c9be Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/accompany_off.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/accompany_on.webp b/moduleUtil/src/main/res/mipmap-xhdpi/accompany_on.webp new file mode 100644 index 00000000..fe7e84d7 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/accompany_on.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/icon_liang.webp b/moduleUtil/src/main/res/mipmap-xhdpi/icon_liang.webp new file mode 100644 index 00000000..9a6378a0 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/icon_liang.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/muisc_reward.webp b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_reward.webp new file mode 100644 index 00000000..58eeb34e Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_reward.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/muisc_switch.webp b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_switch.webp new file mode 100644 index 00000000..80eb4425 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_switch.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xhdpi/muisc_tyt.webp b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_tyt.webp new file mode 100644 index 00000000..47611afc Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xhdpi/muisc_tyt.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_off.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_off.webp new file mode 100644 index 00000000..f90eea1d Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_off.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_on.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_on.webp new file mode 100644 index 00000000..fdf2c359 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/accompany_on.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/icon_liang.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/icon_liang.webp new file mode 100644 index 00000000..3602e0dc Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/icon_liang.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_reward.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_reward.webp new file mode 100644 index 00000000..c563f6d7 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_reward.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_switch.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_switch.webp new file mode 100644 index 00000000..46f8d797 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_switch.webp differ diff --git a/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_tyt.webp b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_tyt.webp new file mode 100644 index 00000000..b1bb8034 Binary files /dev/null and b/moduleUtil/src/main/res/mipmap-xxhdpi/muisc_tyt.webp differ diff --git a/moduleUtil/src/main/res/values/colors.xml b/moduleUtil/src/main/res/values/colors.xml index 7d3df463..1bdcabeb 100644 --- a/moduleUtil/src/main/res/values/colors.xml +++ b/moduleUtil/src/main/res/values/colors.xml @@ -178,6 +178,7 @@ #DFFFFE #F9FAFA #528AFF + #EFEFEF #FF666666 #FF576FFF #FF7685D6 diff --git a/moduleroom/src/main/java/com/example/moduleroom/activity/RoomActivity.kt b/moduleroom/src/main/java/com/example/moduleroom/activity/RoomActivity.kt index 5ccd87b8..76bfe92b 100644 --- a/moduleroom/src/main/java/com/example/moduleroom/activity/RoomActivity.kt +++ b/moduleroom/src/main/java/com/example/moduleroom/activity/RoomActivity.kt @@ -2655,10 +2655,9 @@ class RoomActivity : BaseMvpActivity(), addActiveDialogFragment(fragment) // 添加到管理列表 } } else if (id == R.id.rl_misc) { //设置点歌 - if (mRoomInfoResp!!.room_info.label_id == "1") { - queren() - } else { -// RequestDialogFragment.show(roomId, mRoomInfoResp, 1, getSupportFragmentManager()); +// if (mRoomInfoResp!!.room_info.label_id == "1") { +// queren() +// } else { val fragment = RequestDialogFragment.show( roomId, mRoomInfoResp, 1, supportFragmentManager @@ -2666,7 +2665,7 @@ class RoomActivity : BaseMvpActivity(), if (fragment != null) { addActiveDialogFragment(fragment) // 添加到管理列表 } - } +// } } else if (id == R.id.rl_gift) { //礼物 // RoomGiftDialogFragment.show(mRoomInfoResp, null, roomId, 0, "", getSupportFragmentManager()); val fragment = RoomGiftDialogFragment.show( @@ -3103,6 +3102,9 @@ class RoomActivity : BaseMvpActivity(), if ("1" != typeId) { rl_more?.visibility = View.GONE } + if ("1"==typeId && "2" == labelId){ + rl_misc?.visibility = View.VISIBLE + } } fun isMute(is_mute: Int) { diff --git a/moduleroom/src/main/java/com/example/moduleroom/adapter/RoomSettingAdapter.java b/moduleroom/src/main/java/com/example/moduleroom/adapter/RoomSettingAdapter.java index 16b476da..7a2fdfd4 100644 --- a/moduleroom/src/main/java/com/example/moduleroom/adapter/RoomSettingAdapter.java +++ b/moduleroom/src/main/java/com/example/moduleroom/adapter/RoomSettingAdapter.java @@ -57,6 +57,8 @@ public class RoomSettingAdapter extends BaseMultiItemQuickAdapter { - // 点击“确认”按钮时执行删除操作 - MvpPre.changeRoomType(roomId, type); + if (type.equals("-1")) { + MvpPre.agreeSong(roomId,"1"); + } else + // 点击“确认”按钮时执行删除操作 + MvpPre.changeRoomType(roomId, type); + }, v -> { // 点击“取消”按钮时什么都不做 @@ -370,11 +380,11 @@ public class RoomSettingFragment extends BaseMvpDialogFragment adapter; + VolumeManager volumeManager ; private RoomOnline online; public RoomKtvFragment() {} @@ -89,36 +90,12 @@ public class RoomKtvFragment extends BaseMvpFragment { -// View muZc = view.findViewById(R.id.mu_zc); -// ViewGroup parent = (ViewGroup) muZc.getParent(); -// -// Rect bounds = new Rect(); -// muZc.getHitRect(bounds); -// // 扩展点击区域 -// bounds.top -=55; -// bounds.bottom += 50; -// bounds.left -= 30; -// bounds.right += 30; -// -// parent.setTouchDelegate(new TouchDelegate(bounds, muZc)); -// }); } private SharedViewModel sharedViewModel; @Nullable @Override public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { -// sharedViewModel = new ViewModelProvider(requireActivity()).get(SharedViewModel.class); -// -// // 观察专门给子Fragment的数据 -// sharedViewModel.getChildFragmentData().observe(getViewLifecycleOwner(), data -> { -// if (data != null) { -// // 处理数据 -// roomInfoUpdate(data); -// } -// }); return super.onCreateView(inflater, container, savedInstanceState); } @@ -172,8 +149,9 @@ public class RoomKtvFragment extends BaseMvpFragment(R.layout.item_room_charm_rank) { @@ -535,25 +540,25 @@ public class RoomKtvFragment extends BaseMvpFragment 0) { } else { -// if (mBinding.muZc.pitBean.getUser_id().equals(SpUtil.getUserId() + "")) { -// ((RoomActivity) getActivity()).setRoleType(2, -1); -// ((RoomActivity) getActivity()).switchMic(2); -// } else { ((RoomActivity) getActivity()).setRoleType(0, 0); ((RoomActivity) getActivity()).switchMic(2); -// } - - } } } @@ -760,6 +768,7 @@ public class RoomKtvFragment extends BaseMvpFragment implements RoomSettingContacts.IRoomPre{ RoomSettingContacts.View mView; @@ -70,4 +71,25 @@ public class RoomSettingPresenter extends BasePresenter() { + @Override + public void onSubscribe(Disposable d) { + addDisposable(d); + } + + @Override + public void onNext(String s) { + if (MvpRef==null){ + MvpRef = new WeakReference<>(mView); + } + MvpRef.get().agreeSong(s); + } + }); + } } diff --git a/moduleroom/src/main/res/layout/fragment_room_ktv.xml b/moduleroom/src/main/res/layout/fragment_room_ktv.xml index 81501cda..8adf03c9 100644 --- a/moduleroom/src/main/res/layout/fragment_room_ktv.xml +++ b/moduleroom/src/main/res/layout/fragment_room_ktv.xml @@ -192,10 +192,10 @@ + android:src="@mipmap/accompany_off"/> @@ -228,7 +228,7 @@ android:layout_gravity="center" android:gravity="center" android:text="打赏" - android:textColor="@color/colorPrimary" + android:textColor="@color/color_EFEFEF" android:textSize="@dimen/sp_10"/> @@ -241,8 +241,8 @@ android:orientation="vertical"> @@ -252,12 +252,12 @@ android:layout_gravity="center" android:gravity="center" android:text="切歌" - android:textColor="@color/colorPrimary" + android:textColor="@color/color_EFEFEF" android:textSize="@dimen/sp_10"/> + android:src="@mipmap/muisc_tyt"/> diff --git a/moduletablayout/src/androidTest/java/com/example/moduletablayout/ExampleInstrumentedTest.java b/moduletablayout/src/androidTest/java/com/example/moduletablayout/ExampleInstrumentedTest.java new file mode 100644 index 00000000..b9144cc5 --- /dev/null +++ b/moduletablayout/src/androidTest/java/com/example/moduletablayout/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.example.moduletablayout; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.example.moduletablayout", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/moduletablayout/src/test/java/com/example/moduletablayout/ExampleUnitTest.java b/moduletablayout/src/test/java/com/example/moduletablayout/ExampleUnitTest.java new file mode 100644 index 00000000..2f7018d9 --- /dev/null +++ b/moduletablayout/src/test/java/com/example/moduletablayout/ExampleUnitTest.java @@ -0,0 +1,17 @@ +package com.example.moduletablayout; + +import org.junit.Test; + +import static org.junit.Assert.*; + +/** + * Example local unit test, which will execute on the development machine (host). + * + * @see Testing documentation + */ +public class ExampleUnitTest { + @Test + public void addition_isCorrect() { + assertEquals(4, 2 + 2); + } +} \ No newline at end of file diff --git a/settings.gradle b/settings.gradle index 7999babb..4bd88b77 100644 --- a/settings.gradle +++ b/settings.gradle @@ -63,3 +63,4 @@ include ':tuicore' include ':moduleroom' include ':Loadinglibrary' + diff --git a/tuichat/src/main/java/com/tencent/qcloud/tuikit/tuichat/classicui/page/TUIC2CChatFragment.java b/tuichat/src/main/java/com/tencent/qcloud/tuikit/tuichat/classicui/page/TUIC2CChatFragment.java index da0c3499..0f107959 100644 --- a/tuichat/src/main/java/com/tencent/qcloud/tuikit/tuichat/classicui/page/TUIC2CChatFragment.java +++ b/tuichat/src/main/java/com/tencent/qcloud/tuikit/tuichat/classicui/page/TUIC2CChatFragment.java @@ -119,7 +119,7 @@ public class TUIC2CChatFragment extends TUIBaseChatFragment { @Override public boolean onMenuItemClick(android.view.MenuItem item) { if ("举报".equals(item.getTitle())) { - ARouter.getInstance().build("/moduleUtil/WebViewActivity").withString("url", "https://vespa.qxyushen.top/h5/web/index.html#/pages/feedback/report?id=?id="+getToken()+"&fromType=1&fromId="+ getUserInfo().getUser_id()).navigation(); + ARouter.getInstance().build("/moduleUtil/WebViewActivity").withString("url", "https://vespa.qxyushen.top/h5/web/index.html#/pages/feedback/report?id="+getToken()+"&fromType=1&fromId="+ getUserInfo().getUser_id()).navigation(); return true; } return false;