Need help with Mobile-SDK-iOS?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

478 Stars 221 Forks Other 237 Commits 238 Opened issues


DJI Mobile SDK for iOS:

Services available


Need anything else?

Contributors list

DJI Mobile SDK for iOS

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.14)
Installing DJIWidget (1.6.4)
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 installed.

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

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

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.