[Update]启用多屏功能
This commit is contained in:
@@ -4,6 +4,7 @@ import android.Manifest.permission
|
|||||||
import android.content.Context
|
import android.content.Context
|
||||||
import androidx.annotation.RequiresPermission
|
import androidx.annotation.RequiresPermission
|
||||||
import com.alibaba.android.arouter.facade.annotation.Route
|
import com.alibaba.android.arouter.facade.annotation.Route
|
||||||
|
import com.mogo.cloud.passport.MoGoAiCloudClientConfig
|
||||||
import com.mogo.eagle.core.data.autopilot.AutopilotControlCmdParameter
|
import com.mogo.eagle.core.data.autopilot.AutopilotControlCmdParameter
|
||||||
import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters
|
import com.mogo.eagle.core.data.autopilot.AutopilotControlParameters
|
||||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||||
@@ -21,11 +22,20 @@ import com.mogo.eagle.core.utilcode.mogo.logger.Logger
|
|||||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
|
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
|
||||||
import com.mogo.eagle.core.utilcode.util.GsonUtils
|
import com.mogo.eagle.core.utilcode.util.GsonUtils
|
||||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||||
|
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||||
|
import com.mogo.telematic.MogoProtocolMsg
|
||||||
|
import com.mogo.telematic.MogoProtocolMsg.NORMAL_DATA
|
||||||
|
import com.mogo.telematic.NSDNettyManager
|
||||||
|
import com.mogo.telematic.client.listener.NettyClientListener
|
||||||
|
import com.mogo.telematic.client.status.ConnectState
|
||||||
|
import com.mogo.telematic.server.netty.NettyServerListener
|
||||||
import com.zhidao.support.adas.high.AdasManager
|
import com.zhidao.support.adas.high.AdasManager
|
||||||
import com.zhidao.support.adas.high.AdasOptions
|
import com.zhidao.support.adas.high.AdasOptions
|
||||||
import com.zhidao.support.adas.high.bean.IPCUpgradeInfo
|
import com.zhidao.support.adas.high.bean.IPCUpgradeInfo
|
||||||
import com.zhidao.support.adas.high.common.Constants
|
import com.zhidao.support.adas.high.common.Constants
|
||||||
import com.zhidao.support.adas.high.common.CupidLogUtils
|
import com.zhidao.support.adas.high.common.CupidLogUtils
|
||||||
|
import io.netty.channel.Channel
|
||||||
|
import java.util.*
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
|
|
||||||
|
|
||||||
@@ -36,7 +46,7 @@ import java.util.concurrent.TimeUnit
|
|||||||
*/
|
*/
|
||||||
@Route(path = MogoServicePaths.PATH_AUTO_PILOT)
|
@Route(path = MogoServicePaths.PATH_AUTO_PILOT)
|
||||||
class MoGoAutopilotProvider :
|
class MoGoAutopilotProvider :
|
||||||
IMoGoAutopilotProvider, IMoGoMapDataCollectProvider.OnMapCollectCmdListener {
|
IMoGoAutopilotProvider, IMoGoMapDataCollectProvider.OnMapCollectCmdListener {
|
||||||
private val TAG = "MoGoAutoPilotProvider"
|
private val TAG = "MoGoAutoPilotProvider"
|
||||||
private var mContext: Context? = null
|
private var mContext: Context? = null
|
||||||
|
|
||||||
@@ -56,107 +66,99 @@ class MoGoAutopilotProvider :
|
|||||||
CallerMapDataCollectorManager.registerOnMapCollectTaskListener(this)
|
CallerMapDataCollectorManager.registerOnMapCollectTaskListener(this)
|
||||||
// "192.168.1.102"
|
// "192.168.1.102"
|
||||||
val options = AdasOptions.Builder()
|
val options = AdasOptions.Builder()
|
||||||
.setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.ASSIGN)
|
.setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.ASSIGN)
|
||||||
.setIpcAssignIP(FunctionBuildConfig.adasConnectIP)
|
.setIpcAssignIP(FunctionBuildConfig.adasConnectIP)
|
||||||
.setClient(false)
|
.setClient(false)
|
||||||
.build()
|
.build()
|
||||||
|
|
||||||
AdasManager.getInstance().create(context, options)
|
AdasManager.getInstance().create(context, options)
|
||||||
// NSDNettyManager.getInstance().startNSDNettyServer(context, object : NettyServerListener<MogoProtocolMsg> {
|
NSDNettyManager.getInstance().startNSDNettyServerWithSN(context, object :
|
||||||
// override fun onMessageResponseServer(msg: MogoProtocolMsg?, channel: Channel?) {
|
NettyServerListener<MogoProtocolMsg> {
|
||||||
// Logger.d(TAG, "Receive client data is:${msg?.toString()}")
|
override fun onMessageResponseServer(msg: MogoProtocolMsg?, channel: Channel?) {
|
||||||
// }
|
Logger.d(TAG, "Receive client data is:${msg?.toString()}")
|
||||||
//
|
}
|
||||||
// override fun onStartServer() {
|
|
||||||
// ToastUtils.showShort("司机端服务启动成功!")
|
override fun onStartServer() {
|
||||||
// Logger.d(TAG, "onStartServer")
|
ToastUtils.showShort("司机端服务启动成功!")
|
||||||
// }
|
Logger.d(TAG, "onStartServer")
|
||||||
//
|
}
|
||||||
// override fun onStopServer() {
|
|
||||||
// ToastUtils.showLong("司机端服务停止!")
|
override fun onStopServer() {
|
||||||
// Logger.d(TAG, "onStopServer")
|
ToastUtils.showLong("司机端服务停止!")
|
||||||
// }
|
Logger.d(TAG, "onStopServer")
|
||||||
//
|
}
|
||||||
// override fun onChannelConnect(channel: Channel?) {
|
|
||||||
// NSDNettyManager.getInstance().selectChannel(channel)
|
override fun onChannelConnect(channel: Channel?) {
|
||||||
// val socketAddress = channel?.remoteAddress().toString()
|
val socketAddress = channel?.remoteAddress().toString()
|
||||||
// Logger.d(TAG, "Client ip is:${socketAddress}")
|
Logger.d(TAG, "Client ip is:${socketAddress}")
|
||||||
// }
|
}
|
||||||
//
|
|
||||||
// override fun onChannelDisConnect(channel: Channel?) {
|
override fun onChannelDisConnect(channel: Channel?) {
|
||||||
// Logger.d(TAG, "onChannelDisConnect")
|
Logger.d(TAG, "onChannelDisConnect")
|
||||||
// }
|
}
|
||||||
// })
|
}, MoGoAiCloudClientConfig.getInstance().sn)
|
||||||
} else {// 乘客
|
} else {
|
||||||
// 乘客端默认接收绘制全局路径+引导线
|
// 乘客端默认接收绘制全局路径+引导线
|
||||||
//FunctionBuildConfig.isDemoMode = true
|
//FunctionBuildConfig.isDemoMode = true
|
||||||
//FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true
|
//FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = true
|
||||||
// "192.168.1.103"
|
// "192.168.1.103"
|
||||||
val options = AdasOptions.Builder()
|
val options = AdasOptions.Builder()
|
||||||
.setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.ASSIGN)
|
.setIpcConnectionMode(AdasOptions.IPC_CONNECTION_MODE.ASSIGN)
|
||||||
.setIpcAssignIP(FunctionBuildConfig.adasConnectIP)
|
.setIpcAssignIP(FunctionBuildConfig.adasConnectIP)
|
||||||
.setClient(false)
|
.setClient(false)
|
||||||
.build()
|
.build()
|
||||||
AdasManager.getInstance().create(context, options)
|
AdasManager.getInstance().create(context, options)
|
||||||
// NSDNettyManager.getInstance().searchAndConnectServer(context, MoGoAiCloudClientConfig.getInstance().sn, object : NettyClientListener<MogoProtocolMsg> {
|
NSDNettyManager.getInstance()
|
||||||
// override fun onMessageResponseClient(msg: MogoProtocolMsg?, sign: String?) {
|
.searchAndConnectServer(context, MoGoAiCloudClientConfig.getInstance().sn, object :
|
||||||
// Logger.d(TAG, "收到司机端的数据!")
|
NettyClientListener<MogoProtocolMsg> {
|
||||||
// // 乘客端收到adas数据直接解析,后续分发解析后的数据流程同司机端
|
override fun onMessageResponseClient(msg: MogoProtocolMsg?, sign: String?) {
|
||||||
// msg?.let {
|
Logger.d(TAG, "收到司机端的数据!")
|
||||||
// AdasManager.getInstance().parseIPCData(it.body)
|
// 乘客端收到adas数据直接解析,后续分发解析后的数据流程同司机端
|
||||||
// Logger.d(TAG, "解析司机端数据完毕!")
|
msg?.let {
|
||||||
// }
|
AdasManager.getInstance().parseIPCData(it.body)
|
||||||
// }
|
Logger.d(TAG, "解析司机端数据完毕!")
|
||||||
//
|
}
|
||||||
// override fun onClientStatusConnectChanged(statusCode: Int, sign: String?) {
|
}
|
||||||
// when (statusCode) {
|
|
||||||
// ConnectState.STATUS_CONNECT_SUCCESS -> Logger.d(TAG, "乘客端连接司机端服务成功! sign is:${sign}")
|
override fun onClientStatusConnectChanged(statusCode: Int, sign: String?) {
|
||||||
// else -> {
|
when (statusCode) {
|
||||||
// ToastUtils.showLong("和司机端连接异常!")
|
ConnectState.STATUS_CONNECT_SUCCESS -> {
|
||||||
// Logger.d(TAG, "client statusCode is:${statusCode}")
|
Logger.d(TAG, "乘客端连接司机端服务成功! sign is:${sign}")
|
||||||
// }
|
}
|
||||||
// }
|
else -> {
|
||||||
// }
|
ToastUtils.showLong("和司机端连接异常!")
|
||||||
// })
|
Logger.d(TAG, "client statusCode is:${statusCode}")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
}
|
}
|
||||||
//////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听/////////////////////////////////////////////
|
//////////////////////////////////注意先后顺序,AdasManager.getInstance().create后才可以设置监听/////////////////////////////////////////////
|
||||||
// 监听 adas 连接状态
|
// 监听 adas 连接状态
|
||||||
AdasManager.getInstance()
|
AdasManager.getInstance()
|
||||||
.setOnAdasConnectStatusListener(MoGoAdasMsgConnectStatusListenerImpl())
|
.setOnAdasConnectStatusListener(MoGoAdasMsgConnectStatusListenerImpl())
|
||||||
// 监听ADAS-SDK获取到的工控机数据(乘客也需注册)
|
// 监听ADAS-SDK获取到的工控机数据(乘客也需注册)
|
||||||
AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl())
|
AdasManager.getInstance().setOnAdasListener(MoGoAdasListenerImpl())
|
||||||
// // 司机端监听
|
// 司机端监听
|
||||||
// if (FunctionBuildConfig.appIdentityMode == 0) {
|
if (FunctionBuildConfig.appIdentityMode == 0) {
|
||||||
// AdasManager.getInstance().setOnMultiDeviceListener { bytes ->
|
AdasManager.getInstance().setOnMultiDeviceListener { bytes ->
|
||||||
// Logger.d(
|
Logger.d(
|
||||||
// TAG,
|
TAG,
|
||||||
// "司机端接收到工控机吐出来的数据为:${Arrays.toString(bytes)}"
|
"司机端接收到工控机吐出来的数据为:${Arrays.toString(bytes)}"
|
||||||
// )
|
)
|
||||||
// // 发送数据给乘客端
|
// 发送数据给乘客端
|
||||||
// if (NSDNettyManager.getInstance().isServerStart) {
|
if (NSDNettyManager.getInstance().isServerStart) {
|
||||||
// Logger.d(
|
Logger.d(
|
||||||
// TAG,
|
TAG,
|
||||||
// "司机端透传数据给乘客端!"
|
"司机端透传数据给乘客端!"
|
||||||
// )
|
)
|
||||||
// NSDNettyManager.getInstance().sendMsgToAllClients(MogoProtocolMsg(NORMAL_DATA, bytes.size, bytes))
|
NSDNettyManager.getInstance()
|
||||||
//// NSDNettyManager.getInstance().sendMogoProtocolMsgToClient(MogoProtocolMsg(NORMAL_DATA, bytes.size, bytes)) { channelFuture: ChannelFuture ->
|
.sendMsgToAllClients(MogoProtocolMsg(NORMAL_DATA, bytes.size, bytes))
|
||||||
//// if (channelFuture.isSuccess) {
|
} else {
|
||||||
//// Logger.d(
|
Logger.d(TAG, "司机端Server未启动!")
|
||||||
//// TAG,
|
}
|
||||||
//// "Send data to client is success."
|
}
|
||||||
//// )
|
}
|
||||||
//// } else {
|
|
||||||
//// Logger.d(
|
|
||||||
//// TAG,
|
|
||||||
//// "Send data to client is failure."
|
|
||||||
//// )
|
|
||||||
//// }
|
|
||||||
//// }
|
|
||||||
// } else {
|
|
||||||
// Logger.d(TAG, "司机端Server未启动!")
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// 同步数据给工控机的服务
|
// 同步数据给工控机的服务
|
||||||
AsyncDataToAutopilotServer.INSTANCE.initServer()
|
AsyncDataToAutopilotServer.INSTANCE.initServer()
|
||||||
// 同步是否开启美化模式
|
// 同步是否开启美化模式
|
||||||
@@ -226,7 +228,7 @@ class MoGoAutopilotProvider :
|
|||||||
|
|
||||||
override fun recordPackage(): Boolean {
|
override fun recordPackage(): Boolean {
|
||||||
return AdasManager.getInstance()
|
return AdasManager.getInstance()
|
||||||
.recordPackage(1, (System.currentTimeMillis() / 1000).toInt())
|
.recordPackage(1, (System.currentTimeMillis() / 1000).toInt())
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun recordPackage(type: Int, id: Int): Boolean {
|
override fun recordPackage(type: Int, id: Int): Boolean {
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
package com.mogo.eagle.core.function.autopilot
|
||||||
|
|
||||||
|
import android.content.Context
|
||||||
|
import com.alibaba.android.arouter.facade.annotation.Route
|
||||||
|
import com.mogo.eagle.core.data.constants.MogoServicePaths
|
||||||
|
import com.mogo.eagle.core.function.api.telematic.IMogoTelematicProvider
|
||||||
|
import com.mogo.telematic.NSDNettyManager
|
||||||
|
|
||||||
|
@Route(path = MogoServicePaths.PATH_TELEMATIC_PROVIDER)
|
||||||
|
class MoGoTelematicProvider: IMogoTelematicProvider {
|
||||||
|
|
||||||
|
override fun init(context: Context?) {}
|
||||||
|
|
||||||
|
override fun getServerStarted(): Boolean {
|
||||||
|
return NSDNettyManager.getInstance().isServerStart
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getClientConnStatus(): Boolean {
|
||||||
|
return NSDNettyManager.getInstance().connectStatus
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getServerIp(): String {
|
||||||
|
return NSDNettyManager.getInstance().connServerIp
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun getServerToken(): String {
|
||||||
|
return NSDNettyManager.getInstance().serverSn
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -34,6 +34,7 @@ import com.mogo.eagle.core.function.call.map.CallerMapLocationListenerManager
|
|||||||
import com.mogo.eagle.core.function.call.map.CallerSmpManager
|
import com.mogo.eagle.core.function.call.map.CallerSmpManager
|
||||||
import com.mogo.eagle.core.function.call.obu.CallerOBUManager
|
import com.mogo.eagle.core.function.call.obu.CallerOBUManager
|
||||||
import com.mogo.eagle.core.function.call.obu.CallerObuListenerManager
|
import com.mogo.eagle.core.function.call.obu.CallerObuListenerManager
|
||||||
|
import com.mogo.eagle.core.function.call.telematic.CallerTelematicManager
|
||||||
import com.mogo.eagle.core.function.hmi.R
|
import com.mogo.eagle.core.function.hmi.R
|
||||||
import com.mogo.eagle.core.function.hmi.ui.logcatch.ILogViewListener
|
import com.mogo.eagle.core.function.hmi.ui.logcatch.ILogViewListener
|
||||||
import com.mogo.eagle.core.function.hmi.ui.logcatch.LogInfoView
|
import com.mogo.eagle.core.function.hmi.ui.logcatch.LogInfoView
|
||||||
@@ -45,6 +46,10 @@ import com.mogo.eagle.core.utilcode.mogo.toast.TipToast
|
|||||||
import com.mogo.eagle.core.utilcode.util.*
|
import com.mogo.eagle.core.utilcode.util.*
|
||||||
import com.mogo.map.MogoMap
|
import com.mogo.map.MogoMap
|
||||||
import com.mogo.map.uicontroller.VisualAngleMode
|
import com.mogo.map.uicontroller.VisualAngleMode
|
||||||
|
import com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_300
|
||||||
|
import com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_CROSS
|
||||||
|
import com.mogo.map.uicontroller.VisualAngleMode.MAP_STYLE_VR_ANGLE_TOP
|
||||||
|
import com.mogo.map.uicontroller.VisualAngleMode.MODE_LONG_SIGHT
|
||||||
import com.mogo.map.uicontroller.VisualAngleMode.*
|
import com.mogo.map.uicontroller.VisualAngleMode.*
|
||||||
import com.mogo.module.common.MogoApisHandler
|
import com.mogo.module.common.MogoApisHandler
|
||||||
import kotlinx.android.synthetic.main.view_debug_setting.view.*
|
import kotlinx.android.synthetic.main.view_debug_setting.view.*
|
||||||
@@ -490,6 +495,18 @@ class DebugSettingView @JvmOverloads constructor(
|
|||||||
AppConfigInfo.isConnectNet = NetworkUtils.isConnected(context)
|
AppConfigInfo.isConnectNet = NetworkUtils.isConnected(context)
|
||||||
AppConfigInfo.isConnectSocket = DebugConfig.isDownloadSnapshot()
|
AppConfigInfo.isConnectSocket = DebugConfig.isDownloadSnapshot()
|
||||||
|
|
||||||
|
when (FunctionBuildConfig.appIdentityMode) {
|
||||||
|
0x00 -> {// 司机端
|
||||||
|
AppConfigInfo.isDriver = true
|
||||||
|
AppConfigInfo.isConnectedNetty = CallerTelematicManager.getServerStarted()
|
||||||
|
}
|
||||||
|
else -> {
|
||||||
|
AppConfigInfo.isDriver = false
|
||||||
|
AppConfigInfo.isConnectedNetty = CallerTelematicManager.getClientConnStatus()
|
||||||
|
AppConfigInfo.serverIp = CallerTelematicManager.getServerIp()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// 将数据绘制
|
// 将数据绘制
|
||||||
tvAppInfo.text = Html.fromHtml(AppConfigInfo.toString())
|
tvAppInfo.text = Html.fromHtml(AppConfigInfo.toString())
|
||||||
|
|
||||||
|
|||||||
@@ -45,6 +45,12 @@ object AppConfigInfo {
|
|||||||
// 是否OBU
|
// 是否OBU
|
||||||
var isConnectObu: Boolean = false
|
var isConnectObu: Boolean = false
|
||||||
|
|
||||||
|
var isDriver = true
|
||||||
|
|
||||||
|
// Netty该端是否连接上另一端
|
||||||
|
var isConnectedNetty = false
|
||||||
|
|
||||||
|
var serverIp = ""
|
||||||
|
|
||||||
override fun toString(): String {
|
override fun toString(): String {
|
||||||
return "<font color='red' size='30'>-------------------应用信息--------------------</font><br/>" +
|
return "<font color='red' size='30'>-------------------应用信息--------------------</font><br/>" +
|
||||||
@@ -108,6 +114,27 @@ object AppConfigInfo {
|
|||||||
"<font color='red'>"
|
"<font color='red'>"
|
||||||
}
|
}
|
||||||
}${isConnectObu}</font><br/>" +
|
}${isConnectObu}</font><br/>" +
|
||||||
|
"${
|
||||||
|
when {
|
||||||
|
isDriver -> {
|
||||||
|
"司机端Server启动"
|
||||||
|
}
|
||||||
|
else -> {
|
||||||
|
"乘客端${
|
||||||
|
when {
|
||||||
|
serverIp.isNotEmpty() -> "(目标ip为:${serverIp})"
|
||||||
|
else -> ""
|
||||||
|
}
|
||||||
|
}连接"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}是否正常:${
|
||||||
|
if (isConnectedNetty) {
|
||||||
|
"<font color='green'>"
|
||||||
|
} else {
|
||||||
|
"<font color='red'>"
|
||||||
|
}
|
||||||
|
}${isConnectedNetty}</font><br/>" +
|
||||||
"<font color='red' size='30'>------------------工控机感知&规控数据---------------------</font><br/>"
|
"<font color='red' size='30'>------------------工控机感知&规控数据---------------------</font><br/>"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -274,4 +274,10 @@ public class MogoServicePaths {
|
|||||||
*/
|
*/
|
||||||
@Keep
|
@Keep
|
||||||
public static final String PATH_MAP_DATA_COLLECT_PROVIDER = "/map_x/collect";
|
public static final String PATH_MAP_DATA_COLLECT_PROVIDER = "/map_x/collect";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 多屏通信模块
|
||||||
|
*/
|
||||||
|
@Keep
|
||||||
|
public static final String PATH_TELEMATIC_PROVIDER = "/telematic/api";
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -124,5 +124,4 @@ interface IMoGoAutopilotProvider : IMoGoFunctionServerProvider {
|
|||||||
* isEnable = false 关闭
|
* isEnable = false 关闭
|
||||||
*/
|
*/
|
||||||
fun setControlAutopilotCarAuto(isEnable: Boolean)
|
fun setControlAutopilotCarAuto(isEnable: Boolean)
|
||||||
|
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
package com.mogo.eagle.core.function.api.telematic
|
||||||
|
|
||||||
|
import com.alibaba.android.arouter.facade.template.IProvider
|
||||||
|
|
||||||
|
interface IMogoTelematicProvider: IProvider {
|
||||||
|
fun getServerStarted(): Boolean
|
||||||
|
|
||||||
|
fun getClientConnStatus(): Boolean
|
||||||
|
|
||||||
|
fun getServerIp(): String
|
||||||
|
|
||||||
|
fun getServerToken(): String
|
||||||
|
}
|
||||||
@@ -0,0 +1,37 @@
|
|||||||
|
package com.mogo.eagle.core.function.call.telematic
|
||||||
|
|
||||||
|
import com.mogo.eagle.core.data.constants.MogoServicePaths
|
||||||
|
import com.mogo.eagle.core.function.api.telematic.IMogoTelematicProvider
|
||||||
|
import com.mogo.eagle.core.function.call.base.CallerBase
|
||||||
|
|
||||||
|
object CallerTelematicManager {
|
||||||
|
private val TAG = "CallerTelematicManager"
|
||||||
|
|
||||||
|
private val providerApi: IMogoTelematicProvider?
|
||||||
|
get() = CallerBase.getApiInstance(
|
||||||
|
IMogoTelematicProvider::class.java,
|
||||||
|
MogoServicePaths.PATH_TELEMATIC_PROVIDER
|
||||||
|
)
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取Server是否启动的状态
|
||||||
|
*/
|
||||||
|
fun getServerStarted(): Boolean {
|
||||||
|
return providerApi?.getServerStarted() ?: false
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取Client连接的状态
|
||||||
|
*/
|
||||||
|
fun getClientConnStatus(): Boolean {
|
||||||
|
return providerApi?.getClientConnStatus() ?: false
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getServerIp(): String {
|
||||||
|
return providerApi?.getServerIp() ?: ""
|
||||||
|
}
|
||||||
|
|
||||||
|
fun getServerToken(): String {
|
||||||
|
return providerApi?.getServerToken() ?: ""
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user