From e3dfbc8a7bc3e4f5e1c311bc0de93c5cd62511db Mon Sep 17 00:00:00 2001 From: donghongyu Date: Wed, 24 Nov 2021 16:39:40 +0800 Subject: [PATCH] =?UTF-8?q?[Change]=E4=BF=AE=E6=94=B9=E6=8E=A8=E6=B5=81?= =?UTF-8?q?=E6=B5=81=E7=A8=8B=EF=BC=8C=E5=8E=9F=E5=9B=A0=E6=98=AF=E8=A1=A1?= =?UTF-8?q?=E9=98=B3=E7=8E=AF=E5=A2=83=E4=B8=ADSocket=E4=B8=8B=E5=8F=91?= =?UTF-8?q?=E6=8C=87=E4=BB=A4=E6=9C=89=E9=97=AE=E9=A2=98=EF=BC=8C=E7=8E=B0?= =?UTF-8?q?=E5=9C=A8=E6=94=B9=E6=88=90=E4=BA=86=E5=80=9F=E7=94=A8ZeGo?= =?UTF-8?q?=E7=9A=84=E6=88=BF=E9=97=B4=E4=BA=BA=E6=95=B0=E6=B5=81=E7=A8=8B?= =?UTF-8?q?=E5=A4=A7=E4=BA=8E1=E4=BA=BA=E5=BC=80=E5=A7=8B=E7=9B=B4?= =?UTF-8?q?=E6=92=AD=EF=BC=8C=E5=90=A6=E5=88=99=E5=85=B3=E9=97=AD=E7=9B=B4?= =?UTF-8?q?=E6=92=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/deploymentTargetDropDown.xml | 17 +++++++++++++++++ .idea/misc.xml | 6 +++++- .../java/com/mogo/cloud/MoGoApplication.java | 4 ++-- .../res/layout/activity_live_play_and_push.xml | 2 +- .../live/manager/LiveStreamManagerImpl.java | 4 +++- .../cloud/live/manager/MoGoLiveManager.java | 18 +++++++++++------- .../mogo/cloud/live/server/PushService.java | 4 ++-- gradle.properties | 2 +- 8 files changed, 42 insertions(+), 15 deletions(-) create mode 100644 .idea/deploymentTargetDropDown.xml diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml new file mode 100644 index 0000000..c945303 --- /dev/null +++ b/.idea/deploymentTargetDropDown.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml index daa7ca6..53f5d92 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -11,9 +11,13 @@ diff --git a/app/src/main/java/com/mogo/cloud/MoGoApplication.java b/app/src/main/java/com/mogo/cloud/MoGoApplication.java index 39b539c..ab52fa4 100644 --- a/app/src/main/java/com/mogo/cloud/MoGoApplication.java +++ b/app/src/main/java/com/mogo/cloud/MoGoApplication.java @@ -46,12 +46,12 @@ public class MoGoApplication extends MultiDexApplication { // 配置云服务API MoGoAiCloudClientConfig clientConfig = MoGoAiCloudClientConfig.getInstance(); // 设置网络环境:HTTP_DNS_ENV_QA、HTTP_DNS_ENV_RELEASE、HTTP_DNS_ENV_DEV - clientConfig.setNetMode(MogoHttpDnsConfig.HTTP_DNS_ENV_QA); + clientConfig.setNetMode(MogoHttpDnsConfig.HTTP_DNS_ENV_RELEASE); // 设置是否是第三APP登录,false:自有车机 true:外部三方车机 clientConfig.setThirdLogin(true); // 设置是否输出日志 clientConfig.setShowDebugLog(true); - // 设置是否是直播推流的主播 + // 设置是否是直播推流的主播 true-主播,false-观众 clientConfig.setAnchor(false); // 设置从蘑菇AI开放平台获取的APPKey clientConfig.setThirdPartyAppKey("pfieouqg"); diff --git a/app/src/main/res/layout/activity_live_play_and_push.xml b/app/src/main/res/layout/activity_live_play_and_push.xml index 624a6bc..7047d9f 100644 --- a/app/src/main/res/layout/activity_live_play_and_push.xml +++ b/app/src/main/res/layout/activity_live_play_and_push.xml @@ -106,7 +106,7 @@ android:layout_width="0dp" android:layout_height="wrap_content" android:hint="请输入要查看的车机SN" - android:text="F803EB2046PZD00188" + android:text="202111243VN62KQ" android:textColor="#FFFF" app:layout_constraintBottom_toTopOf="@+id/liveToggleBtn" app:layout_constraintEnd_toEndOf="parent" diff --git a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/LiveStreamManagerImpl.java b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/LiveStreamManagerImpl.java index eb5eee6..05d120c 100644 --- a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/LiveStreamManagerImpl.java +++ b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/LiveStreamManagerImpl.java @@ -205,7 +205,7 @@ public class LiveStreamManagerImpl implements ILiveStreamManager { }; /** - * + * 房间在线人数检测,1=只有自己需要关闭推流,>1 代表有观众在观看需要开启推流 */ private final Runnable mOnlineNumRun = () -> { // 判断当前观众的个数,如果没人观看了的情况则停止直播 @@ -215,6 +215,8 @@ public class LiveStreamManagerImpl implements ILiveStreamManager { if (mLivePusher.getLiveStatusModel().isPushing() && mLivePusher.getLiveStatusModel().getOnlineNumber() <= 1) { livePushHandler(PUSH_STOP, C1); + } else { + livePushHandler(PUSH_START, C1); } restartCheckOnlineNumLoop(); }; diff --git a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/MoGoLiveManager.java b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/MoGoLiveManager.java index 5fc1042..9ffe086 100644 --- a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/MoGoLiveManager.java +++ b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/manager/MoGoLiveManager.java @@ -12,6 +12,7 @@ import com.mogo.cloud.live.listener.ILiveRoomPersonListener; import com.mogo.cloud.live.listener.ILiveStatusListener; import com.mogo.cloud.live.listener.IMediaPlayerStateListener; import com.mogo.cloud.live.model.LiveStatusModel; +import com.mogo.cloud.live.server.PushService; import com.mogo.cloud.passport.MoGoAiCloudClientConfig; import org.json.JSONObject; @@ -261,7 +262,9 @@ public class MoGoLiveManager { if (mLiveStatusModel.getCurrentRoomId().equals(roomID)) { // 更新真实的在线人数 mLiveStatusModel.setOnlineNumber(count); - + if (count > 2) { + PushService.startService(mApplication, PushService.ACTION_START_RTMP_PUSH); + } Log.i(TAG, "房间内当前在线用户数量回调 onRoomOnlineUserCountUpdate roomID : " + roomID + " , online user number : " + mLiveStatusModel.getOnlineNumber()); if (mRoomPersonListener != null) { @@ -307,12 +310,12 @@ public class MoGoLiveManager { " , state : " + state.name() + " , errorCode : " + errorCode); - // 判断如果处于非播放和非推流状态则进行登出操作,并释放引擎 - if (!mLiveStatusModel.isPlaying() - && !mLiveStatusModel.isPushing() - && mLiveStatusModel.getOnlineNumber() <= 1) { - logoutCurrentRoom(); - } +// // 判断如果处于非播放和非推流状态则进行登出操作,并释放引擎 +// if (!mLiveStatusModel.isPlaying() +// && !mLiveStatusModel.isPushing() +// && mLiveStatusModel.getOnlineNumber() <= 1) { +// logoutCurrentRoom(); +// } if (mLiveStatusListener != null) { mLiveStatusListener.onChange(mLiveStatusModel.isPushing() ? 0 : 1); @@ -487,6 +490,7 @@ public class MoGoLiveManager { mExpressEngine.setVideoConfig(zegoVideoConfig); } initCustomVideoCapture(); + loginRoom(); } /** diff --git a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/server/PushService.java b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/server/PushService.java index acd7db6..a0f5881 100644 --- a/foudations/mogo-live/src/main/java/com/mogo/cloud/live/server/PushService.java +++ b/foudations/mogo-live/src/main/java/com/mogo/cloud/live/server/PushService.java @@ -100,7 +100,7 @@ public class PushService extends Service // 设置登录房间的回调监听 mLivePusher.addLiveRoomStatusListener(this); // 推流之前必须先登录房间 - mLivePusher.loginRoom(); + //mLivePusher.loginRoom(); } else { realStartPublish(); } @@ -126,7 +126,7 @@ public class PushService extends Service // 停止发布 mLivePusher.stopPublish(); // 退出房间 - mLivePusher.logoutCurrentRoom(); + //mLivePusher.logoutCurrentRoom(); } // 移除视频回碉监听 CameraFrameManager.getInstance().rmYuvDataCallback(this); diff --git a/gradle.properties b/gradle.properties index 1e468c4..a611f40 100644 --- a/gradle.properties +++ b/gradle.properties @@ -27,7 +27,7 @@ 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.1.55-live