停止时间线任务 - DJI SDK

时间:2018-04-09 12:13:47

标签: dji-sdk

我尝试使用Mobile SDK为无人机设置时间线任务。但任务开始后的停止功能不起作用。我使用4.3.2版本。为什么任务不停止? (每当新任务需要开始清除和停止时间线时,我都会使用此功能)

public void stopAndClear()
{

    if (missionControl.scheduledCount() > 0)
    {
        if(missionControl.getRunningElement()!=null)
        {

            missionControl.getRunningElement().pause();
            missionControl.getRunningElement().stop();

        }
        missionControl.stopTimeline();
        missionControl.unscheduleEverything();
        missionControl.removeAllListeners();
    }
}

1 个答案:

答案 0 :(得分:0)

这里应该澄清时间表的概念和概念内的任务。

时间表由许多任务组成。当一个任务正在执行时,您调用API停止时间轴,它将在此任务完成后停止,而不是停止当前任务。这就是为什么你不能停止当前任务的原因,特别是当前的任务是航点任务或热点任务。 (我们知道getRunningElement()。暂停应该暂停当前的任务,但实际上 暂停: HotpointAction / GotoAction支持它。

停止: AircraftYawAction GimbalAttitutdeAction GoToAction HotpointAction LandOrGoHomeActionBase RecordVideoAction ShootPhotoAction TakeOffAction TimelineMission

支持它。 )

此外,我建议您使用我们最新的SDK版本4.5。它解决了时间线中状态机管理的一些问题。