[BugFix]声音签名个人主页播放逻辑修改

This commit is contained in:
wushaocheng
2023-01-17 12:23:03 +08:00
parent 701040913d
commit fcee14b077
2 changed files with 25 additions and 20 deletions

View File

@@ -29,7 +29,6 @@ import com.yizhuan.xchat_android_core.manager.AvRoomDataManager
import com.yizhuan.xchat_android_core.statistic.StatisticManager
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol
import com.yizhuan.xchat_android_core.user.bean.UserInfo.SoundBean
import com.yizhuan.xchat_android_core.utils.Logger
import com.yizhuan.xchat_android_library.utils.ResUtil
import com.yizhuan.xchat_android_library.utils.SingleToastUtil
import io.reactivex.SingleObserver
@@ -122,8 +121,7 @@ class SoundSignatureActivity : BaseViewBindingActivity<ActivitySoundSignatureBin
private fun initModel() {
soundViewModel.showConfirmLiveData.observe(this) {
if (AvRoomDataManager.get()
.checkIsOnMicByAccount(AuthModel.get().currentUid.toString())
if(AvRoomDataManager.get().isOnMic(AuthModel.get().currentUid.toString())
) {
toast(getString(R.string.on_the_mic_not_record))
} else {

View File

@@ -62,6 +62,7 @@ import com.yizhuan.erban.ui.widget.rollviewpager.adapter.StaticPagerAdapterWrapp
import com.yizhuan.erban.utils.RegexUtil;
import com.yizhuan.erban.vip.VipHelper;
import com.yizhuan.xchat_android_constants.XChatConstants;
import com.yizhuan.xchat_android_core.Constants;
import com.yizhuan.xchat_android_core.auth.AuthModel;
import com.yizhuan.xchat_android_core.im.friend.IMFriendModel;
import com.yizhuan.xchat_android_core.level.UserLevelVo;
@@ -103,7 +104,6 @@ import static com.yizhuan.erban.ui.user.UserInfoActivity.IdentityState.OWN;
/**
* create by lvzebiao on 2018/8/31
*/
@ActLayoutRes(R.layout.activity_user_info)
public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBinding>
implements UserPhotoAdapter.ImageClickListener, ObservableScrollView.ScrollViewListener {
@@ -601,13 +601,6 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
setLikedText(event.isPraise());
}
@Override
protected void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
stopAudio(0);
}
private void setOfficialMask(String name, String icon) {
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) {
mBinding.inOfficialMask.setVisibility(View.VISIBLE);
@@ -661,23 +654,14 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
}
private void toggleAudio(UserInfo.SoundBean audioCard) {
RoomInfo current = AvRoomDataManager.get().mCurrentRoomInfo;
String url = "";
if (audioCard.getAudioUrl().contains("http")) {
url = audioCard.getAudioUrl();
}
if (TextUtils.isEmpty(url)) return;
if (!audioPlaying) {
if(current != null){
AudioEngineManager.get().setRemoteMute(true);//設置靜音
AudioEngineManager.get().setMute(true);//不能説話
}
playAudio(url, audioCard.getSecond());
} else {
if(current != null){
AudioEngineManager.get().setRemoteMute(false);//非靜音
AudioEngineManager.get().setMute(false);//能説話
}
stopAudio(audioCard.getSecond());
}
}
@@ -690,6 +674,11 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
playSvgaBg(mBinding.livUser, "svga/user_sound_play.svga");
mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_play);
startCountDown(second);
if(AvRoomDataManager.get().mCurrentRoomInfo != null){
AudioEngineManager.get().setRemoteMute(true);//設置靜音
AudioEngineManager.get().setMute(true);//不能説話
AudioEngineManager.get().setRole(Constants.CLIENT_ROLE_AUDIENCE);
}
AudioPlayerHelper.get().playInThread(url, new OnPlayListener() {
@Override
@@ -744,6 +733,24 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
mBinding.livUser.stopAnimation();
mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_pause);
AudioPlayerHelper.get().endPlay();
if(AvRoomDataManager.get().mCurrentRoomInfo != null){
AudioEngineManager.get().setRemoteMute(false);//非靜音
AudioEngineManager.get().setMute(false);//能説話
AudioEngineManager.get().setRole(Constants.CLIENT_ROLE_BROADCASTER);
}
}
@Override
protected void onPause() {
super.onPause();
stopAudio(userInfo.getAudioCard().getSecond());
}
@Override
protected void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
AudioPlayerHelper.get().onDestroy();
}
@Override