Как извлечь данные EXTRA_PARAMETER во время события PARAMETER_RECEIVED?
Используя Dronekit Android, я слушаю события в onDroneEvent. Одним из таких событий является AttributeEvent.PARAMETER_RECEIVED
Я могу получить другие атрибуты, такие как ориентация, батарея, сигнал rssi и т. Д. Просто не знаю, как получить доступ к параметрам, отправленным с дрона после подключения.
public void onDroneEvent(String event, Bundle extras) {
switch (event) {
case AttributeEvent.PARAMETER_RECEIVED:
//Grab extra parameter data
//possibly using AttributeEventExtra.EXTRA_PARAMETER_NAME
// AttributeEventExtra.EXTRA_PARAMETER_INDEX
// AttributeEventExtra.EXTRA_PARAMETER_VALUE
break;
. . . removed extraneous code . . .
Любые указатели будут оценены.
1 ответ
Вы можете посмотреть, как это делается, на экране параметров в Tower для справки.
Как правило, параметры от дрона отправляются после подключения или после явного вызова VehicleApi # refreshParameters ().
Чтобы отслеживать, когда они обновляются, вы можете прослушивать события PARAMETERS_REFRESH_STARTED и PARAMETERS_REFRESH_COMPLETED. Между этими двумя событиями также будет отправлено несколько событий PARAMETER_RECEIVED для каждого обновленного параметра.
Вы также можете получить доступ к последнему полученному набору параметров, используя:
Parameters parameters = drone.getAttribute(AttributeType.PARAMETERS);