目录

下载DJI Mobile SDK

          将 SDK 集成到应用程序中

创建新应用程序

配置 Gradle 脚本

实现应用注册和 SDK 回调

运行导入 SDK 演示

下载DJI Mobile SDK

从这里下载适用于Android的DJI移动SDK:DJI Developer

根据查看发现,Mobile SDK V5并不支持Mavic2开发,通过查看旧版本发现Mobile SDK V4支持Mavic2开发,所以选择下载Mobile SDK V4。

大疆Android Studio_大疆Android Studio

大疆Android Studio_大疆Android Studio_02

点开更多查看到支持Mavic2系列开发。

大疆Android Studio_android-studio_03

下面进行Mobile SDK V4的下载。

因设备原因,选择Android版本进行下载。

大疆Android Studio_Android_04

大疆Android Studio_应用程序_05

下载完成。

大疆Android Studio_android-studio_06

 将 SDK 集成到应用程序中

上篇博客写到安装完Android Studio,安装的版本如下图所示。

大疆Android Studio_应用程序_07

因为开发文档里是基于Android Studio 3.0 的,在进行项目编写过程中发现和文档里的版本不一致会造成某些问题,故重新安装了Android Studio 3.0。

创建新应用程序

一个新的应用程序可以用来展示如何将DJI SDK集成到Android Studio项目中。

  • 打开 Android Studio,然后在初始屏幕上选择启动新的 Android Studio 项目

大疆Android Studio_Android_08

  • 在“新建项目”屏幕中:
  • 将应用程序名称设置为“导入SDKDemo”。
  • 将“公司域和程序包名称”设置为“com.dji.ImportSDKDemo”。

大疆Android Studio_大疆Android Studio_09

注意:程序包名称是生成应用密钥所需的标识字符串。下面的活动 java、清单 xml 和 Gradle 脚本代码假定包名称为“com.dji.ImportSDKDemo”

  • 在“目标安卓设备”屏幕中:
  • 选择“手机和平板电脑”外形规格。
  • 选择 API 19: Android 4.4 (KitKat)。

大疆Android Studio_Android_10

  • 在“将活动添加到移动设备”屏幕中,选择“清空活动”。

大疆Android Studio_大疆Android Studio_11

  • 在“配置活动”屏幕中:
  • 将“活动名称”设置为“MainActivity”。
  • 确保选中“生成布局文件”。
  • 将“布局名称:”设置为“activity_main”。
  • 完成后单击“完成”。

大疆Android Studio_应用程序_12

配置 Gradle 脚本

  • 在 Gradle 脚本中,双击 build.gradle (模块:应用程序)

大疆Android Studio_android_13

 

  • 使用以下内容更新内容:

大疆Android Studio_Android_14

大疆Android Studio_应用程序_15

    主要变化应该是:

   添加 以防止应用程序出现任何意外崩溃。

   添加 和 依赖项以导入最新的 DJI 安卓 SDK Maven 依赖项。

  • 选择工具 -> Android -> 将项目与 Gradle 文件同步,然后等待 Gradle 项目同步完成。

大疆Android Studio_android-studio_16

 

  • 仔细检查 Maven 依赖关系
  • 在 Android Studio 菜单中选择“文件>项目结构”以打开“项目结构”窗口。然后选择“应用”模块并单击“依赖项”选项卡。您应该看到最新的DJI SDK编译,并且已经导入了denpendendencies。

大疆Android Studio_大疆Android Studio_17

实现应用注册和 SDK 回调

  • 右键单击 ,然后选择 New->Java 类以创建一个新的 java 类并将其命名为“MApplication”。

打开 MApplication.java 文件,并将内容替换为以下内容:

大疆Android Studio_android_18

双击应用程序模块中的 MainActivity.java。

MainActivity 类需要注册应用程序才能获得使用 DJI 移动 SDK 的授权。它还需要实现 SDK 预期的回调方法。

MainActivity 类将首先被修改为包含多个类变量,包括表示连接到移动设备的 DJI 产品的对象。

此外,将修改该方法以调用该方法以检查和请求运行时权限。此外,该方法还有助于调用该方法以注册应用程序。此外,重写方法将有助于检查应用程序是否具有足够的权限,如果是,请调用该方法以注册应用程序。

现在,将 MainActivity 类替换为:

  • 在引入以下四句时报错,通过查找原因进行如下修改。//import androidx.annotation.NonNull;//import androidx.appcompat.app.AppCompatActivity; //import androidx.core.app.ActivityCompat; //import androidx.core.content.ContextCompat; import android.support.annotation.NonNull; import android.support.v7.app.AppCompatActivity; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat;

双击应用程序模块中的AndroidManifest.xml。

  1. 插入后和之前:package=com.dji.ImportSDKDemo

在元素的开头添加:android:name=".MApplication"

大疆Android Studio_大疆Android Studio_19

 在以下内容之后和之前插入以下内容:android:theme="@style/AppTheme"

大疆Android Studio_android_20

 如下图所示在元素中插入 and,以防止活动在屏幕方向更改时重新启动,并将活动的屏幕方向设置为纵向模式:

大疆Android Studio_android-studio_21

生成应用密钥,并将“请在此处输入您的应用密钥”替换为“应用密钥”字符串。

大疆Android Studio_android-studio_22

运行导入 SDK 演示

运行 ImportSDKDemo 项目留到下篇博客去讲。