Skip to main content

V2.5.100融合SDK使用说明

一. 总体说明

      MSDK V2.5.100 是在 V2.5.2(组网版)的基础上开发的,新增了对 V2.0(单机版)的兼容性支持。然而,由于飞机和遥控器固件版本的不同,以及 MSDK 接口的调整和持续迭代,可能会导致接口变化和兼容性问题。本文档详细列出了这些差异,旨在为不同开发者提供参考,帮助他们更好地理解和应对可能出现的问题。

1. V2.5与V2.0本质区别

  •  V2.5 版本

    • 多机组网支持:V2.5 支持多个飞行设备的组网操作。设备通过设备发现服务上报并动态创建,动态网络配置和管理。
    • 设备生命周期管理:组网中的飞机设备具有明确的生命周期,包括创建、运行和销毁等阶段。这使得系统能够更好地管理和监控每个设备的状态。
  • V2.0 版本

    • 单一飞机连接:V2.0 仅支持单个飞行设备的连接。设备在 SDK 初始化时即创建,并在对频后直接与遥控器建立连接。
    • 无设备生命周期管理:由于只支持单一设备,V2.0 中的设备没有复杂的生命周期管理概念,设备一旦初始化要么连接状态,要么断开连接。

2. 多机固件和单机固件

    多机固件和单机固件主要指的是遥控器和飞机配套的固件版本:

  • 多机组网固件

    • 版本要求:版本1.8.x及以上的固件版本支持多机组网功能。
    • 特性:这些固件版本允许多个飞行设备和多个遥控器加入同一个网络,实现更复杂的操作场景。例如,可以设置一个主控遥控器和一个中继飞机,并且其他遥控器作为从控遥控器,飞机作为普通节点飞机。
  • 单机固件

    • 版本要求:低于1.8.x的固件版本为单机版本。
    • 特性:仅支持单一飞行设备连接,设备在SDK初始化时创建,并在对频后直接与遥控器建立连接,没有复杂的生命周期管理。

3. 组网功能

    组网包括多机(多机多控)组网模式和单机(一机一控)模式,者两种模式都是基于设备发现(参考文档Demo)。

4. 机型固件信息参考

机型固件版本说明
Evo Max 4T/4N/4T Pro系列1.8及以上多机组网版本
Evo Max 4T/4N/4T Pro系列1.8以下版本单机版本
EVO Lite--单机版本
Autel Alpha/Titan1.8及以上多机组网版本
1.8及以上1.8以下版本单机版本

二. 开发细则

  场景一:使用 MSDK V2.5.100 开发APP同时支持单机和多机固件

模块单机固件多机固件说明
航线任务仅支持autel二进制文件使用KMZ任务文件兼容主流文件
避障接口KeyObstacleAvoidanceKeyObstacleAvoidActionSet扩展了避障模式
AI追踪接口各镜头独立接口 ,如:
KeyTrackingEnter
KeyInfraredTrackingEnter
统一接口,参数指定镜头
KeyIntelligentLockEnter
AIDetectConfigBean增加lensId
接口优化
追踪目标TrackTargetRectBeanTrackTargetRectBean增加lensId接口完善
对频对频单点对频,多机组网扩展

场景二:APP将MSDK从 V2.0 升级到V2.5.100

  • 如果是多机固件需要参考 MSDK V2.5 的开发文档进行开发

  • 如果是单机固件,以下内容仍需要调整

模块单机固件多机固件说明
升级模块就接口已不支持使用新接口扩展多机升级
相机:KeyCameraDeviceInfo参数:DeviceInfoBean参数:CameraDeviceInfoBean名称变更
下载监听FileTransmissionListener
FileTransmitListener
FileTransmitListener接口整合
飞机上报
FlightControlStatusInfo
batteryNotInPlaceFlag :IntbatteryNotInPlaceFlag: BatteryInPlaceEnum类型变更
播放器1. com.autel.module_player.xxx
2. com.autel.rtmp.publisher.IPublishListener
3. com.autel.gb28181.IGB28181PublishListener
4. com.autel.rtspserver.IRtspServerCallBack
1. com.autel.player.xxx
2. com.autel.publisher.IPublishListener
3. com.autel.publisher.gb28181.IGB28181PublishListener
4. com.autel.publisher.rtsp.IRtspServerCallBack
包名变更
拼写错误
异常完善
增加多路推流

三. 附加说明

  1. MSDK会在初始化的时候会根据固件规则,自动判断当前是单机固件还是组网固件

  2. 如果无法准确判断固件版本,SDK初始化可以设置其工作模式

val sdkInitCfg = SDKInitConfig().apply { 
debug = false
    storage = null
    log = null
    single = true //force single mode
}
SDKManager.get().init(this.applicationContext, sdkInitCfg)
  1. 组网接口参考教程,点对点对频和单机对频使用同一AirLinkKey对频接口;双击电池开关进入对频,先短按后长按飞机进入组网模式

  2. 其它接口变更问题,可以随时咨询