• Stars
    star
    976
  • Rank 46,912 (Top 1.0 %)
  • Language
    Java
  • License
    Other
  • Created about 9 years ago
  • Updated 11 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

DJI Mobile SDK for Android: http://developer.dji.com/mobile-sdk/

MSDK V5 Released

MSDK V5 Supported Product:

DJI Mobile SDK V4 for Android Latest Version 4.16.4

What Is This?

The DJI Mobile SDK enables you to automate your DJI Product. You can control flight, and many subsystems of the product including the camera and gimbal. Using the Mobile SDK, create a customized mobile app to unlock the full potential of your DJI aerial platform.

Integration

Declare dependency via Maven:

<dependency>
    <groupId>com.dji</groupId>
    <artifactId>dji-sdk</artifactId>
    <version>4.16.4</version>
</dependency>

<dependency>
    <groupId>com.dji</groupId>
    <artifactId>dji-sdk-provided</artifactId>
    <version>4.16.4</version>
</dependency>

or Gradle:

compile 'com.dji:dji-sdk:4.16.4'
provided 'com.dji:dji-sdk-provided:4.16.4'

For further detail on how to integrate the DJI Android SDK into your Android Studio project, please check the Integrate SDK into Application tutorial.

Running the SDK Sample Code

Developers can run the sample application to immediately run code and see how the DJI Mobile SDK can be used.

One of DJI's aircraft or handheld cameras will be required to run the sample application.

Development Workflow

From registering as a developer, to deploying an application, the following will take you through the full Mobile SDK Application development process:

Sample Projects & Tutorials

Several Android tutorials are provided as examples on how to use different features of the Mobile SDK and debug tools includes:

Learn More about DJI Products and the Mobile SDK

Please visit DJI Mobile SDK Documentation for more details.

DJI Mobile UX SDK

DJI Mobile UX SDK is a suite of product agnostic UI objects that fast tracks the development of iOS applications using the DJI Mobile SDK. For more details, please check here.

Device Health Information Json File

You can find the hms.json and hms_match_sdkerror.json files in this repo's root folder.

It contains error code and detailed description for device components. Only supported by some components of Matrice 300 RTK and Zenmuse H20 series.

It is recommended to use device health information to replace old diagnostics for flight controller and RTK. There will be a few duplicated component error for gimbal, battery, perception module on Matrice 300 RTK.

Please refer to the table below for duplicated error:

DJIDiagnosticsError Enum Value AlarmId
BATTERY_DISCHARGE_OVER_CURRENT 3001 0x110B0001
BATTERY_DISCHARGE_OVER_HEAT 3002 0x110B0002
BATTERY_LOW_TEMPERATURE 3003 0x110B0003
BATTERY_CELL_BROKEN 3004 0x110B0006
GIMBAL_CONNECT_TO_FC_ERROR 2005 0x1D030001
GIMBAL_GYROSCOPE_ERROR 2001 0x1D040002
GIMBAL_PITCH_ERROR 2002 0x1D040004
GIMBAL_ROLL_ERROR 2003 0x1D040003
GIMBAL_YAW_ERROR 2004 0x1D040005

ProGuard

If you're planning on optimizing your app with ProGuard, you can add the following rules to your app's proguard.cfg file:

  • For AAR file, please use the following rule:
"-libraryjars ./PATH_TO_THIS_FILE/dji_android_sdk.aar"

Note: There are two types of DJI Android SDK: AAR and API Library folder, you can download them from DJI Developer Website: http://developer.dji.com/mobile-sdk/downloads/.

SDK Keys

SDK Keys can be used as an alternative interface to access the product.

A detailed introduction for SDK Keys is here.

Missions Refactor

Missions are an important part of the SDK as they allow developers to automate DJI's products using a simple, high level interface. In 4.0, missions are being refactored to be more robust and easier to manage.

A detailed introduction for missions is here.

Android Bridge App

Please check this link to download the apk of the Android Bridge App apk file.

SDK API Reference

Android SDK API Documentation

License

The DJI Android SDK is dynamically linked with unmodified libraries of FFmpeg licensed under the LGPLv2.1. The source code of these FFmpeg libraries, the compilation instructions, and the LGPL v2.1 license are provided in Github.

The DJI Android SDK is dynamically linked with unmodified libraries of JTS Topology Suite licensed under the LGPLv2.1.

Support

You can get support from DJI with the following methods:

Join Us

DJI is looking for all kinds of Software Engineers to continue building the Future of Possible. Available positions in Shenzhen, China and around the world. If you are interested, please send your resume to [email protected]. For more details, and list of all our global offices, please check https://we.dji.com/jobs_en.html.

DJI 招软件工程师啦,based在深圳,如果你想和我们一起把DJI产品做得更好,请发送简历到 [email protected]. 或者在这里提交您的简历:https://we.dji.com/zh-CN/position/detail?positionId=1382258951346253824 更多岗位详情请浏览 https://we.dji.com/zh-CN/social.

More Repositories

1

Tello-Python

This is a collection of python modules that interact with the Ryze Tello drone.
Python
1,346
star
2

Onboard-SDK

DJI Onboard SDK Official Repository
C++
904
star
3

Mobile-SDK-iOS

DJI Mobile SDK for iOS: http://developer.dji.com/mobile-sdk/
Objective-C
576
star
4

Onboard-SDK-ROS

Official ROS packages for DJI onboard SDK.
C++
443
star
5

RoboMaster-SDK

DJI RoboMaster Python SDK and Sample Code for RoboMaster EP.
C
322
star
6

Mobile-SDK-Android-V5

MSDK V5 Sample
Java
254
star
7

Payload-SDK

DJI Payload SDK Official Repository
C
223
star
8

Windows-SDK

DJI Windows SDK: http://developer.dji.com/windows-sdk/
C
166
star
9

Mobile-UXSDK-Android

DJI Mobile UXSDK is a suite of product agnostic UI objects that fast tracks the development of Android applications using the DJI Mobile SDK.
151
star
10

Guidance-SDK

The official Guidance SDK package for Windows, Ubuntu and XU3.
C++
134
star
11

DJI-Cloud-API-Demo

Java
120
star
12

Mobile-UXSDK-Beta-Android

Mobile Android UXSDK Beta
Java
97
star
13

Cloud-API-Demo-Web

Vue
93
star
14

Android-Bridge-App

Source code of DJI Android Bridge App.
Java
93
star
15

Guidance-SDK-ROS

The official ROS package of Guidance SDK for 32/64 bit Ubuntu and XU3
C++
80
star
16

Mobile-UXSDK-iOS

DJI Mobile UXSDK is a suite of product agnostic UI objects that fast tracks the development of iOS applications using the DJI Mobile SDK.
Objective-C
73
star
17

Mobile-SDK-Tutorial

GitBook Link
CSS
61
star
18

Mobile-SDK-Doc

Source code and docs for the documentation page of DJI Mobile SDK Developer Website.
HTML
52
star
19

FlightRecordParsingLib

DJI Flight Record Parsing Lib
C++
45
star
20

DJI-IoTEdge

This project is a sample for you to learn how to combine Microsoft Azure IoT Edge DJI Windows SDK and DJI Drones.
C#
45
star
21

iOS-Bridge-App

The source code of DJI Bridge App project
Objective-C
38
star
22

DJIWidget

The DJIWidget is a delightful DJI library includes VideoPreviewer for video decoding.
C
35
star
23

Manifold-Cam

The project realizes to get the video data from X3 camera on M100.
C
34
star
24

Onboard-SDK-Doc

Source code and docs for the documentation page of DJI Onboard SDK Developer Website.
HTML
34
star
25

Mobile-UXSDK-Beta-iOS

Mobile iOS UXSDK Beta
Objective-C
23
star
26

Cloud-API-Doc

20
star
27

Edge-SDK

DJI Edge SDK Official Repository
C++
19
star
28

Windows-SDK-Doc

Source code and docs for the documentation page of DJI Windows SDK Developer Website.
HTML
18
star
29

Mobile-OSDK-iOS-App

Mobile - OnboardSDK communication iOS app
Objective-C
15
star
30

Payload-SDK-Doc

Source code and docs for the documentation page of DJI Payload SDK Developer Website.
HTML
14
star
31

DJIPSDKVideoStreamCheckTool

PSDK video stream check tool, used to check whether the specified video stream conforms to the PSDK video stream standard
C
13
star
32

Guidance-SDK-Doc

Source code and docs for the documentation page of DJI Guidance SDK Developer Website.
CSS
9
star
33

Mobile-SDK-Tutorial-V5

Mobile SDK Tutorial V5 Public
6
star
34

Onboard-SDK-Resources

6
star
35

Onboard-SDK-ROS-Release

4
star
36

DJIFlySafeDatabaseResource

DJIFlySafeDatabaseResource bundle.
Ruby
2
star
37

DJINetworkRTKHelper

The DJINetworkRTKHelper is used for Network RTK service in DJI Mobile SDK.
Ruby
2
star
38

OnboardSDK-Ping-iOSApp

Companion iOS App for Ping ADS-B integration to DJI onboard SDK.
Objective-C
1
star
39

Payload-SDK-Tutorial

Payload SDK Tutorial
1
star