Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?


Failed to load latest commit information.

DJI Mobile SDK for iOS Latest Version 4.16.2

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.

Get Started Immediately

SDK Installation with CocoaPods

Since this project has been integrated with DJI iOS SDK CocoaPods now, please check the following steps to install DJISDK.framework using CocoaPods after you downloading this project:

1. Install CocoaPods

Open Terminal and change to the download project's directory, enter the following command to install it:

sudo gem install cocoapods

The process may take a long time, please wait. For further installation instructions, please check this guide.

2. Install SDK and DJIWidget with CocoaPods in the Project

Run the following command in the ObjcSampleCode and SwiftSampleCode paths:

pod install

If you install it successfully, you should get the messages similar to the following:

Analyzing dependencies
Downloading dependencies
Installing DJI-SDK-iOS (4.16.2)
Installing DJIWidget (1.6.8)
Installing DJIFlySafeDatabaseResource (
Generating Pods project
Integrating client project

[!] Please close any current Xcode sessions and use `DJISdkDemo.xcworkspace` for this project from now on.
Pod installation complete! There is 1 dependency from the Podfile and 1 total pod

Note: If you saw "Unable to satisfy the following requirements" issue during pod install, please run the following commands to update your pod repo and install the pod again:

pod repo update
pod install

Run Sample Code

Developers will need to setup the App Key by editing the sample code's info.plist, after generating their unique App Key.

For the Objective-C sample app, the key value DJISDKAppKey should to be added to DJISdkDemo-Info.plist with your unique app key as a string. (It is no longer necessary to edit the "DJIRootViewController.m" as in previous versions of the DJI SDK.)

For the Swift sample app, the DJISDKAppKey is present in the Info.plist - developers just need to add their unique key. In both cases developers will still need to update the Bundle Identifier .

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

DJIWidget Integration

Starting from DJI iOS SDK 4.7, we have replaced the VideoPreviewer with DJIWidget for video decoding. Please add the following line to your Podfile to install it to your Xcode project:

pod 'DJIWidget', '~> 1.6.3'

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 iOS 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 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.

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.1, missions are being refactored to be more robust and easier to manage.

A detailed introduction for missions is here.

SDK API Reference

iOS SDK API Documentation


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 For more details, and list of all our global offices, please check

DJI 招软件工程师啦,based在深圳,如果你想和我们一起把DJI产品做得更好,请发送简历到 详情请浏览