解决了异常终止直播的bug

This commit is contained in:
董宏宇
2021-03-04 13:35:48 +08:00
parent f56e77c682
commit 075df3dd4c
4 changed files with 48 additions and 37 deletions

View File

@@ -104,7 +104,7 @@
android:layout_width="0dp"
android:layout_height="wrap_content"
android:hint="请输入要查看的车机SN"
android:text="F803BB2037EZD00048"
android:text="F803EB2046PZD00149"
android:textColor="#FFFF"
app:layout_constraintBottom_toTopOf="@+id/liveToggleBtn"
app:layout_constraintEnd_toEndOf="parent"

View File

@@ -28,7 +28,7 @@ public class LiveStreamManagerImpl implements ILiveStreamManager {
private final Application mApplication;
// 循环上报摄像头可直播状态间隔时间
private static final int PUSH_CAM_TIME = 35 * 1000;
private static final int PUSH_CAM_TIME = 40 * 1000;
private static volatile int sCam1LiveStatus = 0, sCam2LiveStatus = 0;
private static volatile int sCam1AvailableStatus = 0, sCam2AvailableStatus = 0;
private static final int PUSH_START = 0; // 开始

View File

@@ -238,18 +238,20 @@ public class MoGoLiveManager {
@Override
public void onRoomStateUpdate(String roomID, ZegoRoomState state, int errorCode, JSONObject extendedData) {
super.onRoomStateUpdate(roomID, state, errorCode, extendedData);
Logger.i(TAG, "onRoomStateUpdate roomID : " + roomID +
" state:" + state +
" errorCode:" + errorCode);
//房间状态更新
if (mProgressListener != null) {
if (state == ZegoRoomState.CONNECTING) {
mProgressListener.onConnecting();
} else if (state == ZegoRoomState.CONNECTED) {
mProgressListener.onConnected(roomID);
} else {
onlineNumber = 0;
mProgressListener.onDisConnect();
// 这里只处理当前设备登录的房间中的用户总数
if (currentRoomId.equals(roomID)) {
Logger.i(TAG, "onRoomStateUpdate roomID : " + roomID +
" state:" + state +
" errorCode:" + errorCode);
//房间状态更新
if (mProgressListener != null) {
if (state == ZegoRoomState.CONNECTING) {
mProgressListener.onConnecting();
} else if (state == ZegoRoomState.CONNECTED) {
mProgressListener.onConnected(roomID);
} else {
mProgressListener.onDisConnect();
}
}
}
}
@@ -287,8 +289,11 @@ public class MoGoLiveManager {
@Override
public void onRoomExtraInfoUpdate(String roomID, ArrayList<ZegoRoomExtraInfo> roomExtraInfoList) {
super.onRoomExtraInfoUpdate(roomID, roomExtraInfoList);
Logger.i(TAG, "onRoomExtraInfoUpdate roomId : " + roomID +
" , roomExtraInfoList : " + roomExtraInfoList.size());
// 这里只处理当前设备登录的房间中的用户总数
if (currentRoomId.equals(roomID)) {
Logger.i(TAG, "onRoomExtraInfoUpdate roomId : " + roomID +
" , roomExtraInfoList : " + roomExtraInfoList.size());
}
}
// 推流状态回调
@@ -296,12 +301,15 @@ public class MoGoLiveManager {
public void onPublisherStateUpdate(String streamID, ZegoPublisherState state,
int errorCode, JSONObject extendedData) {
super.onPublisherStateUpdate(streamID, state, errorCode, extendedData);
Logger.i(TAG, "onPublisherStateUpdate streamID : " + streamID +
" , state : " + state.name() +
" , errorCode : " + errorCode);
isPushing = state == ZegoPublisherState.PUBLISHING;
if (mLiveStatusListener != null) {
mLiveStatusListener.onChange(isPushing ? 0 : 1);
// 这里只处理当前设备登录的房间中的用户总数
if (currentStreamId.equals(streamID)) {
Logger.i(TAG, "onPublisherStateUpdate streamID : " + streamID +
" , state : " + state.name() +
" , errorCode : " + errorCode);
isPushing = state == ZegoPublisherState.PUBLISHING;
if (mLiveStatusListener != null) {
mLiveStatusListener.onChange(isPushing ? 0 : 1);
}
}
}
@@ -309,11 +317,14 @@ public class MoGoLiveManager {
@Override
public void onPlayerStateUpdate(String streamID, ZegoPlayerState state, int errorCode, JSONObject extendedData) {
super.onPlayerStateUpdate(streamID, state, errorCode, extendedData);
Logger.i(TAG, "onPlayerStateUpdate streamId : " + streamID +
" , state : " + state.name() +
" , errorCode : " + errorCode +
" , extendData : " + extendedData.toString());
isPlaying = state == ZegoPlayerState.PLAYING;
// 这里查看的是别的房间
if (multiStreamId.equals(streamID)) {
Logger.i(TAG, "onPlayerStateUpdate streamId : " + streamID +
" , state : " + state.name() +
" , errorCode : " + errorCode +
" , extendData : " + extendedData.toString());
isPlaying = state == ZegoPlayerState.PLAYING;
}
}
};

View File

@@ -27,23 +27,23 @@ SNAPSHOT_REPOSITORY_URL=http://nexus.zhidaoauto.com/repository/maven-snapshots/
USERNAME=xintai
PASSWORD=xintai2018
# 编译模式: false - 依赖本地版本, true - 依赖 maven 版本
RELEASE=true
RELEASE=false
# AI CLOUD 云平台
# 工具类
MOGO_UTILS_VERSION=1.0.49
MOGO_UTILS_VERSION=1.0.50
# 网络请求
MOGO_NETWORK_VERSION=1.0.49
MOGO_NETWORK_VERSION=1.0.50
# 网络DNS
MOGO_HTTPDNS_VERSION=1.0.49
MOGO_HTTPDNS_VERSION=1.0.50
# 鉴权
MOGO_PASSPORT_VERSION=1.0.49
MOGO_PASSPORT_VERSION=1.0.50
# 常链接
MOGO_SOCKET_VERSION=1.0.49
MOGO_SOCKET_VERSION=1.0.50
# 数据采集
MOGO_REALTIME_VERSION=1.0.49
MOGO_REALTIME_VERSION=1.0.50
# 探路,道路事件发布,获取
MOGO_TANLU_VERSION=1.0.49
MOGO_TANLU_VERSION=1.0.50
# 直播推流
MOGO_LIVE_VERSION=1.0.49
MOGO_LIVE_VERSION=1.0.50
# 直播拉流
MOGO_TRAFFICLIVE_VERSION=1.0.49
MOGO_TRAFFICLIVE_VERSION=1.0.50