[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.StatisticManager
import com.yizhuan.xchat_android_core.statistic.protocol.StatisticsProtocol 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.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.ResUtil
import com.yizhuan.xchat_android_library.utils.SingleToastUtil import com.yizhuan.xchat_android_library.utils.SingleToastUtil
import io.reactivex.SingleObserver import io.reactivex.SingleObserver
@@ -122,8 +121,7 @@ class SoundSignatureActivity : BaseViewBindingActivity<ActivitySoundSignatureBin
private fun initModel() { private fun initModel() {
soundViewModel.showConfirmLiveData.observe(this) { soundViewModel.showConfirmLiveData.observe(this) {
if (AvRoomDataManager.get() if(AvRoomDataManager.get().isOnMic(AuthModel.get().currentUid.toString())
.checkIsOnMicByAccount(AuthModel.get().currentUid.toString())
) { ) {
toast(getString(R.string.on_the_mic_not_record)) toast(getString(R.string.on_the_mic_not_record))
} else { } 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.utils.RegexUtil;
import com.yizhuan.erban.vip.VipHelper; import com.yizhuan.erban.vip.VipHelper;
import com.yizhuan.xchat_android_constants.XChatConstants; 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.auth.AuthModel;
import com.yizhuan.xchat_android_core.im.friend.IMFriendModel; import com.yizhuan.xchat_android_core.im.friend.IMFriendModel;
import com.yizhuan.xchat_android_core.level.UserLevelVo; 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 * create by lvzebiao on 2018/8/31
*/ */
@ActLayoutRes(R.layout.activity_user_info) @ActLayoutRes(R.layout.activity_user_info)
public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBinding> public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBinding>
implements UserPhotoAdapter.ImageClickListener, ObservableScrollView.ScrollViewListener { implements UserPhotoAdapter.ImageClickListener, ObservableScrollView.ScrollViewListener {
@@ -601,13 +601,6 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
setLikedText(event.isPraise()); setLikedText(event.isPraise());
} }
@Override
protected void onDestroy() {
super.onDestroy();
EventBus.getDefault().unregister(this);
stopAudio(0);
}
private void setOfficialMask(String name, String icon) { private void setOfficialMask(String name, String icon) {
if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) { if (!TextUtils.isEmpty(name) && !TextUtils.isEmpty(icon)) {
mBinding.inOfficialMask.setVisibility(View.VISIBLE); mBinding.inOfficialMask.setVisibility(View.VISIBLE);
@@ -661,23 +654,14 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
} }
private void toggleAudio(UserInfo.SoundBean audioCard) { private void toggleAudio(UserInfo.SoundBean audioCard) {
RoomInfo current = AvRoomDataManager.get().mCurrentRoomInfo;
String url = ""; String url = "";
if (audioCard.getAudioUrl().contains("http")) { if (audioCard.getAudioUrl().contains("http")) {
url = audioCard.getAudioUrl(); url = audioCard.getAudioUrl();
} }
if (TextUtils.isEmpty(url)) return; if (TextUtils.isEmpty(url)) return;
if (!audioPlaying) { if (!audioPlaying) {
if(current != null){
AudioEngineManager.get().setRemoteMute(true);//設置靜音
AudioEngineManager.get().setMute(true);//不能説話
}
playAudio(url, audioCard.getSecond()); playAudio(url, audioCard.getSecond());
} else { } else {
if(current != null){
AudioEngineManager.get().setRemoteMute(false);//非靜音
AudioEngineManager.get().setMute(false);//能説話
}
stopAudio(audioCard.getSecond()); stopAudio(audioCard.getSecond());
} }
} }
@@ -690,6 +674,11 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
playSvgaBg(mBinding.livUser, "svga/user_sound_play.svga"); playSvgaBg(mBinding.livUser, "svga/user_sound_play.svga");
mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_play); mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_play);
startCountDown(second); 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() { AudioPlayerHelper.get().playInThread(url, new OnPlayListener() {
@Override @Override
@@ -744,6 +733,24 @@ public class UserInfoActivity extends BaseBindingActivity<ActivityUserInfoBindin
mBinding.livUser.stopAnimation(); mBinding.livUser.stopAnimation();
mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_pause); mBinding.ivAudioControl.setImageResource(R.drawable.ic_skill_pause);
AudioPlayerHelper.get().endPlay(); 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 @Override