DJI Mobile SDK for iOS: http://developer.dji.com/mobile-sdk/
C Objective-C Swift C++ Ruby
Clone or download
Latest commit 1404e9b Jul 24, 2018

README.md

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 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.6.1)
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.

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

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

FFmpeg Customization

We have forked the original FFmpeg and added customized features to provide more video frame information including the frame's width and height, frame rate number, etc. These features will help to implement video hardware decoding.

The SDK Sample Code 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.

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 software-sz@dji.com. For more details, and list of all our global offices, please check https://we.dji.com/jobs_en.html.

DJI 招软件工程师啦,based在深圳,如果你想和我们一起把DJI产品做得更好,请发送简历到 software-sz@dji.com. 详情请浏览 https://we.dji.com/zh-CN/recruitment.