Skip to main content

Introduction to Android Mobile SDK

Introduction to MSDK

MSDK is a software development kit that allows developers to access a range of Autel UAV functions. For example, developers can realize autonomous flight, control the camera and gimbal, receive real-time video mapping and sensor data, download saved media files, and listen to the status of other components, etc. This allows developers to focus on the status of other components without having to have extensive background in robotics or embedded systems. In this way, developers do not need to have extensive background knowledge of robotics or embedded systems, but can focus on the development of industry applications related to UAV products.

MSDK includes:

  • Libraries/frameworks that can be imported into an Android application to access the functionality of Autel's drone products
  • Executable sample code for the Android environment
  • Tutorial documentation and API documentation

This article describes how the MSDK connects to Autel's drone products, the features provided by the SDK, and the infrastructure of the SDK.

SDK Structure Overview

The SDK architecture adopts a face-oriented approach to programming to make the code structure more flexible, and optimizes the code structure by using commonly used design patterns such as the factory, singleton, proxy, and observer patterns.

The following figure shows the structure of SDK Module 2.5.

SDK Architecture

Mobile apps can access Mobile SDK through the major classes listed as follows.

FeatureDescription
SDKManagerManages MSDK initialization and registration
DeviceManangerMSDK device management class, responsible for the management of various devices and their status
IKeyManagerManages Autel Key, providing read/write access and control capabilities for Autel device software modules
AutelPlayerProvides classes for streaming playback
IMissionManagerManages intelligent mission tasks and flight management functions
IDeviceManagerManages devices, responsible for multi-device connections and device capability set provision
IRTKManagerManages RTK (Real-Time Kinematic) features, including Qianxun RTK, custom network RTK, and base station RTK
ILogManagerManages flight logs and provides flight record and flight control log retrieval functionality
IAccurateRetakeManagerProvide interfaces for mission recording, accurate re-shooting, map acquisition, etc.
IAlbumManagerObtaining media data from drones, as well as downloading and deleting media data from photo albums.
ICameraAbilitySetManagerCamera capability set management class, providing interfaces related to camera control
IADSBManagerProvide interfaces for ADS-B on or off, alarm level setting, etc.
IAutelDroneDeviceAircraft equipment interface class, through which you can get the status information of the aircraft as well as album management, route management and other interfaces.
IMultiDeviceOperatorMulti-Drone interface for networking, providing interfaces related to multi-drone networking functions
IOTAUpgradeManagerOTA management class, providing functions such as checking versions, upgrading remote controls and drone, etc.
ILightingManagerSearchlight management class, to provide the searchlight on or off, adjust the brightness and other functions, need PSDK support.
IMegaphoneManagerShouting device management class, you can launch the shouting, set the volume and so on, need PSDK support
IPayloadManagerPayload Manager, interface to access accessory information, etc.