Mavic 机型连接后图传信号与遥控连接信号丢失,追究发现Mavic系列使用 OcuSync 图传系统,在监听相关Key是需要注意适配。
关键代码
//Mavic 系列机型使用 OcuSync 图传方案,需要单独适配
//addListenerWithInitialValue 自己封装了一层,参见DJI SDK的监听函数
Model model = DJIHelper.getInstance().getModel();
if (model != null) {
String modelName = model.getDisplayName();
if (modelName.contains("Mavic")){
KeyManager.getInstance().addListenerWithInitialValue(AirLinkKey.createOcuSyncLinkKey(AirLinkKey.UPLINK_SIGNAL_QUALITY), uplinkQualityListener);
KeyManager.getInstance().addListenerWithInitialValue(AirLinkKey.createOcuSyncLinkKey(AirLinkKey.DOWNLINK_SIGNAL_QUALITY), downlinkQualityListener);
}else {
KeyManager.getInstance().addListenerWithInitialValue(AirLinkKey.createLightbridgeLinkKey(AirLinkKey.UPLINK_SIGNAL_QUALITY), uplinkQualityListener);
KeyManager.getInstance().addListenerWithInitialValue(AirLinkKey.createLightbridgeLinkKey(AirLinkKey.DOWNLINK_SIGNAL_QUALITY), downlinkQualityListener);
}
}
同理,使用Wifi 连接的需要AirLinkKey.createWifiLinkKey。
附,大疆产品的图传贴图,连接 https://developer.dji.com/mobile-sdk/documentation/introduction/product_introduction.html#product-comparison