修复安卓用户主播关播后在关播顶面显示主播最后一真画面。
修复安卓主播关播后还在一直推流。
This commit is contained in:
parent
d8e9cc2189
commit
48e3ff46ab
@ -2,8 +2,16 @@ package io.agora.beautyapi.faceunity.agora;
|
|||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Context;
|
import android.content.Context;
|
||||||
|
import android.opengl.EGL14;
|
||||||
|
import android.opengl.EGLConfig;
|
||||||
|
import android.opengl.EGLContext;
|
||||||
|
import android.opengl.EGLDisplay;
|
||||||
|
import android.opengl.EGLSurface;
|
||||||
|
import android.opengl.GLES20;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
import android.view.Surface;
|
||||||
import android.view.TextureView;
|
import android.view.TextureView;
|
||||||
|
import android.view.View;
|
||||||
import android.widget.FrameLayout;
|
import android.widget.FrameLayout;
|
||||||
|
|
||||||
|
|
||||||
@ -98,7 +106,7 @@ public class SWAuManager extends BaseCacheManager {
|
|||||||
*/
|
*/
|
||||||
public void initRtcEngine(Activity mContext) {
|
public void initRtcEngine(Activity mContext) {
|
||||||
this.mContext = mContext;
|
this.mContext = mContext;
|
||||||
if(mRtcEngine==null){
|
if (mRtcEngine == null) {
|
||||||
try {
|
try {
|
||||||
// 创建 RtcEngineConfig 对象,并进行配置
|
// 创建 RtcEngineConfig 对象,并进行配置
|
||||||
RtcEngineConfig config = new RtcEngineConfig();
|
RtcEngineConfig config = new RtcEngineConfig();
|
||||||
@ -122,7 +130,7 @@ public class SWAuManager extends BaseCacheManager {
|
|||||||
public void initRtcEngineAudio(Activity mContext) {
|
public void initRtcEngineAudio(Activity mContext) {
|
||||||
this.mContext = mContext;
|
this.mContext = mContext;
|
||||||
try {
|
try {
|
||||||
if(mRtcEngine==null){
|
if (mRtcEngine == null) {
|
||||||
RtcEngineConfig config = new RtcEngineConfig();
|
RtcEngineConfig config = new RtcEngineConfig();
|
||||||
config.mContext = mContext;
|
config.mContext = mContext;
|
||||||
config.mAppId = CommonAppConfig.getSwAppId();
|
config.mAppId = CommonAppConfig.getSwAppId();
|
||||||
@ -354,7 +362,7 @@ public class SWAuManager extends BaseCacheManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static String getChannelName(String liveUid) {
|
public static String getChannelName(String liveUid) {
|
||||||
if ( liveUid != null &&liveUid.contains("g")) {
|
if (liveUid != null && liveUid.contains("g")) {
|
||||||
return liveUid;
|
return liveUid;
|
||||||
} else {
|
} else {
|
||||||
return CommonAppConfig.SWChannelPrefix + liveUid;
|
return CommonAppConfig.SWChannelPrefix + liveUid;
|
||||||
@ -416,14 +424,26 @@ public class SWAuManager extends BaseCacheManager {
|
|||||||
this.linkUserContainer = linkUserContainer;
|
this.linkUserContainer = linkUserContainer;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void release() {
|
||||||
|
if (audienceContainer != null) {
|
||||||
|
TextureView childAt = (TextureView) audienceContainer.getChildAt(0);
|
||||||
|
if (childAt != null && childAt.getSurfaceTexture() != null) {
|
||||||
|
childAt.setVisibility(View.GONE);
|
||||||
|
childAt.invalidate();
|
||||||
|
audienceContainer.removeAllViews();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public interface SwListener {
|
public interface SwListener {
|
||||||
void onUserOffline(int liveUid);
|
void onUserOffline(int liveUid);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void preloadChannel(List<LiveBean> uids){
|
public void preloadChannel(List<LiveBean> uids) {
|
||||||
for (int i = 0; i <uids.size(); i++) {
|
for (int i = 0; i < uids.size(); i++) {
|
||||||
int code = mRtcEngine.preloadChannel(CommonAppConfig.SWToken,getChannelName(uids.get(i).getUid()),Integer.parseInt(CommonAppConfig.getInstance().getUid()));
|
int code = mRtcEngine.preloadChannel(CommonAppConfig.SWToken, getChannelName(uids.get(i).getUid()), Integer.parseInt(CommonAppConfig.getInstance().getUid()));
|
||||||
L.eSw("设置秒开数据 uid"+uids.get(i).getUid()+" --- userName:"+uids.get(i).getUserNiceName()+" code "+code);
|
L.eSw("设置秒开数据 uid" + uids.get(i).getUid() + " --- userName:" + uids.get(i).getUserNiceName() + " code " + code);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -630,6 +630,7 @@ public class LivePlaySwViewHolder extends LiveRoomPlayViewHolder {
|
|||||||
mEnd = true;
|
mEnd = true;
|
||||||
mStarted = false;
|
mStarted = false;
|
||||||
Bus.getOff(this);
|
Bus.getOff(this);
|
||||||
|
swAuManager.release();
|
||||||
EventBus.getDefault().unregister(this);
|
EventBus.getDefault().unregister(this);
|
||||||
//swAuManager.exitChannelAll();
|
//swAuManager.exitChannelAll();
|
||||||
L.e(TAG, "release------->");
|
L.e(TAG, "release------->");
|
||||||
|
@ -549,6 +549,7 @@ public class LivePushSwViewHolder extends AbsRyLivePushViewHolder implements ITX
|
|||||||
public void release() {
|
public void release() {
|
||||||
super.release();
|
super.release();
|
||||||
Bus.getOff(this);
|
Bus.getOff(this);
|
||||||
|
onDestroy();
|
||||||
LiveHttpUtil.cancel(LiveHttpConsts.LINK_MIC_TX_MIX_STREAM);
|
LiveHttpUtil.cancel(LiveHttpConsts.LINK_MIC_TX_MIX_STREAM);
|
||||||
rtcRoom = null;
|
rtcRoom = null;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user