diff --git a/app/src/main/java/com/mogo/cloud/RealTimeActivity.java b/app/src/main/java/com/mogo/cloud/RealTimeActivity.java index c94bd8d..218e129 100644 --- a/app/src/main/java/com/mogo/cloud/RealTimeActivity.java +++ b/app/src/main/java/com/mogo/cloud/RealTimeActivity.java @@ -1,22 +1,25 @@ package com.mogo.cloud; import android.os.Bundle; +import android.util.Log; import android.widget.Button; import androidx.annotation.Nullable; import androidx.appcompat.app.AppCompatActivity; import com.mogo.cloud.passport.MoGoAiCloudClient; -import com.mogo.realtime.core.SnapshotUploadInTime; - -import java.nio.Buffer; +import com.mogo.realtime.Interface.MoGoAiCloudRealTime; +import com.mogo.realtime.entity.MogoSnapshotSetData; +import com.mogo.realtime.socket.IMogoCloudOnMsgListener; /** * @author liujing * @description 描述 * @since: 2021/1/21 */ -public class RealTimeActivity extends AppCompatActivity { +public class RealTimeActivity extends AppCompatActivity implements IMogoCloudOnMsgListener { + + private static final String TAG = "RealTimeActivity"; private Button snapshotStartButton; private Button snapshotStopButton; @@ -30,13 +33,14 @@ public class RealTimeActivity extends AppCompatActivity { snapshotStartButton = findViewById(R.id.snapshotStart); snapshotStartButton.setOnClickListener(view -> { if (MoGoAiCloudClient.getInstance().getAiCloudClientConfig().isNeedUploadCoordinatesDurationInTime()) { - SnapshotUploadInTime.getInstance().start(getApplicationContext(), "com.mogo.launcher"); + MoGoAiCloudRealTime.startRealTime(this, "com.mogo.launcher"); + MoGoAiCloudRealTime.registerOnMsgListener(this); } }); snapshotStopButton = findViewById(R.id.snapshotStop); snapshotStopButton.setOnClickListener(view -> { - SnapshotUploadInTime.getInstance().stop(); + stopRealTimeService(); }); } @@ -44,7 +48,26 @@ public class RealTimeActivity extends AppCompatActivity { private void setConfig() { MoGoAiCloudClient.getInstance().getAiCloudClientConfig().setIsUseExternalLocation(false); MoGoAiCloudClient.getInstance().getAiCloudClientConfig().setNeedUploadCoordinatesDurationInTime(true); - } + public void stopRealTimeService() { + MoGoAiCloudRealTime.unRegisterOnMsgListener(this); + MoGoAiCloudRealTime.stopRealTime(); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + stopRealTimeService(); + } + + @Override + public void onMsgSend(long id) { + Log.i(TAG, "send msg id : " + id); + } + + @Override + public void onMsgReceived(MogoSnapshotSetData mogoSnapshotSetData) { + Log.i(TAG, "onMsgReceived : " + mogoSnapshotSetData); + } } diff --git a/modules/mogo-realtime/src/main/java/com/mogo/realtime/Interface/MoGoAiCloudRealTime.java b/modules/mogo-realtime/src/main/java/com/mogo/realtime/Interface/MoGoAiCloudRealTime.java index d38c697..c9055bb 100644 --- a/modules/mogo-realtime/src/main/java/com/mogo/realtime/Interface/MoGoAiCloudRealTime.java +++ b/modules/mogo-realtime/src/main/java/com/mogo/realtime/Interface/MoGoAiCloudRealTime.java @@ -1,5 +1,8 @@ package com.mogo.realtime.Interface; +import android.content.Context; + +import com.mogo.realtime.core.SnapshotUploadInTime; import com.mogo.realtime.socket.IMogoCloudOnMsgListener; import com.mogo.realtime.socket.SocketHandler; @@ -8,6 +11,14 @@ import com.mogo.realtime.socket.SocketHandler; */ public class MoGoAiCloudRealTime { + public static void startRealTime(Context context, String appId) { + SnapshotUploadInTime.getInstance().start(context, appId); + } + + public static void stopRealTime(){ + SnapshotUploadInTime.getInstance().stop(); + } + public static void registerOnMsgListener(IMogoCloudOnMsgListener onMsgListener) { SocketHandler.getInstance().registerOnMsgListener(onMsgListener); }