#android #dji-sdk
#Android #dji-sdk
Вопрос:
Я не нашел никакой информации об этом. Я бы хотел создать миссию путевой точки следующим образом:
- беспилотник прибывает в путевую точку
- вся миссия приостанавливается, уведомляет пользователя (есть ли прослушиватель для путевых точек?)
- приложение переходит к другому действию, чтобы сделать снимок
- пользователь возвращается с фотосъемки
- пользователь нажимает кнопку, миссия продолжается до следующей путевой точки.
Я вижу действия путевой точки, но это не совсем то, чего я хотел бы достичь. Я хотел бы позволить пользователю управлять миссией вручную, но иметь возможность делать такие вещи, как пропускать путевые точки, а также переходить к другому действию, пока беспилотник ждет в путевой точке.
Какие-либо советы по этому поводу?
Спасибо
Ответ №1:
Этот ответ относится конкретно к Android SDK, но аналогичные концепции существуют и для iOS SDK.
В Android миссии путевых точек создаются и управляются с помощью класса WaypointMissionOperator . Экземпляры этого класса позволяют настраивать прослушиватель с помощью addListener
метода, который будет вызываться при наличии обновленного состояния самолета. onExecutionUpdate
Метод WaypointMissionOperatorListener
, который вы передаете этому методу, получит событие WaypointMissionExecutionEvent. У этого объекта есть getProgress
метод, который предоставит вам информацию о состоянии миссии, которая вам нужна ( targetWaypointIndex
и isWaypointReached
).
Чтобы приостановить миссию в определенной путевой точке, вы можете добавить удержание в путевой точке. Это позволяет вашему программному обеспечению, работающему на мобильном устройстве, вовремя обнаружить, что самолет достиг путевой точки, и отправить команду приостановки миссии.
Остальная часть вашего вопроса касается философии дизайна, которая немного выходит за рамки stackoverflow, но не стесняйтесь обращаться ко мне напрямую.