Skip to main content

任务管理器

interface IMissionManager

描述: 航线任务管理接口:实现航线任务的上传、启动、暂停、恢复等操作


method uploadKmzMissionFile

fun uploadKmzMissionFile(
kmzPath: String,
guid: Int,
callback: CommonCallbacks.CompletionCallbackWithProgress<Double>
)

描述: 上传KMZ航线执行文件

输入参数:

kmzPath:kmz文件路径

guid:飞机任务的唯一ID(一般取时间戳)

callback:上传文件进度

输出参数: 无。

相关参数: CompletionCallbackWithProgress。

method uploadMissionFile

fun uploadMissionFile(
missionInfo: MissionInfoJNI
callback: CommonCallbacks.CompletionCallbackWithProgress<Double>
)

描述: 上传航线任务执行文件

输入参数:

missionInfo:MissionInfo航线任务文件模型 callback:上传文件进度

输出参数: 无。

相关参数: CompletionCallbackWithProgress。

method uploadMissionFile

fun uploadMissionFile(
missionFilePath: String,
callback: CommonCallbacks.CompletionCallbackWithProgress<Double>
)

描述: 上传航线任务执行文件

输入参数: missionFilePath:用户自己保存的MissionInfoJNI 任务文件路径 callback:上传文件进度

输出参数: 无。

相关参数: CompletionCallbackWithProgress。

method cancelUploadMission

fun cancelUploadMission()

描述: 取消本次任务上传

输入参数:

输出参数: 无。

相关参数:

method startMission

fun startMission(
missionInfo: IMissionWaypointBean,
callback: CommonCallbacks.CompletionCallbackWithProgressAndParam<Void>
)

描述: 任务文件上传之后, 可以启动任务

输入参数: missionInfo:任务信息(Guid),通过IMissionWaypointBean实现不通任务文件类型 callback: 进度和参数的回调

输出参数: 无。

相关参数: CompletionCallbackWithProgressAndParam、IMissionWaypointBean。

method pauseMission

fun pauseMission(
callback: CommonCallbacks.CompletionCallbackWithParam<Void>,
isKml: Boolean? = false
)

描述: 暂停执行航线任务

输入参数: callback: 参数进度回调

isKml: 是否是KMZ任务

输出参数: 无。

相关参数: CompletionCallbackWithParam。

method resumeMission

fun resumeMission(
missionInfo: IMissionWaypointBean,
callback: CommonCallbacks.CompletionCallbackWithParam<Void>
)

描述: 从暂停处恢复执行航线任务

输入参数: missionInfo:任务信息(Guid),通过IMissionWaypointBean实现不通任务文件类型 callback: 完成回调

输出参数: 无。

相关参数: CompletionCallbackWithParam。

method exitMission

fun exitMission(
callback: CommonCallbacks.CompletionCallbackWithParam<Void>,
isKml: Boolean? = false
)

描述: 停止执行航线任务

输入参数: callback: 完成回调

isKml: 是否是KMZ任务

输出参数: 无。

相关参数: CompletionCallbackWithParam。

method addWaypointMissionExecuteStateListener

fun addWaypointMissionExecuteStateListener(listener: CommonCallbacks.KeyListener<MissionWaypointStatusReportNtfyBean>)

描述: 设置航线任务执行状态的监听器。可以用来监听航线任务的执行状态,比如:航线任务执行中、暂停中、完成、任务进度等状态

输入参数: listener:路点状态的监听器

输出参数: 无。

相关参数: KeyListener,MissionWaypointStatusReportNtfyBean。

method removeWaypointMissionExecuteStateListener

fun removeWaypointMissionExecuteStateListener(listener: CommonCallbacks.KeyListener<MissionWaypointStatusReportNtfyBean>)

描述: 移除航线任务执行状态的监听器

输入参数: listener:路点状态的监听器

输出参数: 无。

相关参数: KeyListener,MissionWaypointStatusReportNtfyBean。

method queryMissionBreakpointInfo

fun queryMissionBreakpointInfo(
guidBean: MissionWaypointGUIDBean,
callback: CommonCallbacks.CompletionCallbackWithParam<MissionWaypointBreakRspBean>
)

描述: 查询任务断点信息

输入参数: guid:任务guid模型 callback: 路点中断响应完成时的回调

输出参数: 无。

相关参数: CompletionCallbackWithParam,MissionWaypointBreakRspBean。

method resumeBeakpointMission

fun resumeBeakpointMission(
guidBean: IMissionWaypointBean,
callback: CommonCallbacks.CompletionCallbackWithParam<Void>)

描述: 恢复断点任务

输入参数:

guidBean:任务信息(Guid),通过IMissionWaypointBean实现不通任务文件类型 callback: 完成时的回调

输出参数: 无。

相关参数: CompletionCallbackWithParam。

class MissionWaypointStatusReportNtfyBean

描述: 任务执行状态

data class MissionWaypointStatusReportNtfyBean(
/**
* 系统时间戳; uint: ms
*/
var timestamp: Long = 0L,
/**
* 任务ID
*/
var missionId: Int = 0,
/**
* 航点序号
*/
var wpSeq: Int = 0,
/**
* 剩余距离
*/
var remainDistance: Int = 0,
/**
* 参考 MISSION_TYPE
*/
var missionType: MissionTypeEnum = MissionTypeEnum.UNKNOWN,
/**
* 当前拍照张数
*/
var photoNum: Int = 0,
/**
* 剩余时间; uint:s
*/
var remainTime: Int = 0,
/**
* 当前任务状态,参考 MISSION_CURRENT_STATUS
*/
var status: MissionCurrentStateEnum = MissionCurrentStateEnum.UNKNOWN,
/**
* 任务guid
*/
var guid: Int = 0,
/**
* 当前动作序号
*/
var actionSeq: Int = 0,
/**
* 航点抵达状态; 0 - arrived; 1 - Not arrived
*/
var arrived: Int = 0,

/**
* 任务进度百分比
*/
var percent: Int = 0,

/**
* 当前的任务阶段
*/
var taskStageIndex: Int = 4
) {
fun isKmzMission(): Boolean
}