大疆MSDK V4版本镜头图传切换H20T

本文介绍了如何通过大疆H20T的MSDK控制其红外广角变焦图传,提供了两种方案:一是使用KeyManager设置并监听回调,二是直接调用mCamera的setCameraVideoStreamSource方法并处理结果回调。

大疆H20T有红外广角变焦三个图传,使用MSDK控制图传切换的方式有两种方案传入参数

setVideoStreamSource(CameraVideoStreamSource.INFRARED_THERMAL, 0);//红外
setVideoStreamSource(CameraVideoStreamSource.WIDE, 0);//广角
setVideoStreamSource(CameraVideoStreamSource.ZOOM, 0);//变焦

有两种切换方案

第一种方案:

private void setVideoStreamSource(CameraVideoStreamSource cameraVideoStreamSource, int zoomFactor) {
        KeyManager.getInstance().setValue(CameraKey.create(CameraKey.CAMERA_VIDEO_STREAM_SOURCE, zoomFactor), cameraVideoStreamSource, new SetCallback() {
            @Override
            public void onSuccess() {
                if (cameraVideoStreamSource != CameraVideoStreamSource.DEFAULT) {
                    showToast("成功切换视频通道!");
                }
            }

            @Override
            public void onFailure(DJIError djiError) {
                showToast("切换失败");
            }
        });
    }

第二种方案:

private void setVideoStreamSource(CameraVideoStreamSource cameraVideoStreamSource, int zoomFactor) {
        mCamera.setCameraVideoStreamSource(cameraVideoStreamSource, new CommonCallbacks.CompletionCallback() {
            @Override
            public void onResult(DJIError djiError) {
                if (djiError == null) {
                    showToast("成功切换视频通道!" + zoomFactor);
                } else {
                    showToast("成功切换视频失败!" + djiError.getDescription());
                }
            }
        });
    }

### Android 大疆 MSDK V5 开发指南 #### 注册开发者账户与获取 API Key 在开始开发之前,需要先注册大疆开发者账户,并获取相应的 API Key。这是使用大疆 MSDK 的前提条件之一。访问[开发者注册页面](https://account.dji.com/register?appId=dji_sdk&backUrl=https%3A%2F%2Fdeveloper.dji.com%2Fuser&locale=en_US),完成注册流程[^3]。 注册完成后,登录到大疆开发者后台,创建一个新的应用项目以获取 API Key。将此 API Key 插入到你的 Android 应用的 `AndroidManifest.xml` 文件中,具体位置是在 `<application>` 标签内添加如下代码: ```xml <meta-data android:name="com.dji.sdk.API_KEY" android:value="你的APIKey"/> ``` #### 下载并配置 SDK 前往大疆官方 GitHub 页面下载或克隆适用于 Android 的 Mobile SDK 示例代码工程:https://github.com/dji-sdk/Mobile-SDK-Android[^4]。使用 Android Studio 打开该项目,根据示例代码了解如何集成和使用 MSDK。 #### 集成 MSDK 到项目中 1. **添加依赖**:确保你的项目的 `build.gradle` 文件中包含了正确的仓库地址和依赖项。通常情况下,你需要在项目的根级 `build.gradle` 文件中添加 JitPack 仓库: ```gradle allprojects { repositories { ... maven { url 'https://jitpack.io' } } } ``` 接着,在模块级别的 `build.gradle` 文件中添加 MSDK 的依赖: ```gradle dependencies { implementation 'com.github.dji-sdk:Mobile-SDK-Android:v5.x.x' } ``` 2. **初始化 SDK**:在应用启动时初始化 MSDK,通常在主活动的 `onCreate` 方法中执行初始化操作。例如: ```java DJISDKManager.getInstance().registerApp(this, new DJISDKManager.SDKManagerCallback() { @Override public void onRegister(DJIError djiError) { if (djiError == DJIError.NO_ERROR) { // 注册成功 DJISDKManager.getInstance().startConnectionToProduct(); } else { // 注册失败,处理错误 } } @Override public void onProductDisconnect() { // 产品断开连接时的处理 } @Override public void onProductConnect(BaseProduct baseProduct) { // 产品连接成功后的处理 } @Override public void onComponentChange(BaseProduct.ComponentKey componentKey, BaseComponent oldComponent, BaseComponent newComponent) { // 组件变化时的回调 } }); ``` #### 使用 MSDK 功能 MSDK V5 提供了高度集成的一站式解决方案,使得开发者可以专注于业务逻辑的实现而不必从零开始构建基础功能[^2]。利用 MSDK,你可以轻松实现无人机控制、相机操作、飞行数据获取等功能。 - **控制无人机**:通过 MSDK 提供的接口,可以发送指令给无人机执行起飞、降落、移动等动作。 - **操作相机**:如果无人机配备了相机,可以通过 SDK 控制拍照、录像等。 - **获取飞行数据**:实时获取无人机的状态信息,如电池电量、飞行高度、GPS 坐标等。 #### 社区与支持 遇到问题时,可以参考官方文档和示例代码,或者加入大疆开发者社区寻求帮助。活跃的社区环境有助于快速解决问题并分享经验。 #### 持续学习与更新 随着技术的发展,大疆会定期更新 MSDK,加入新的特性和改进现有功能。保持对最新版本的关注,可以帮助你更好地利用新技术提升应用的质量和用户体验。 ---
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值