我可以在任何跨平台框架上使用 DJI Mobile SDK 吗?
Can I use DJI Mobile SDK with any cross platform framework?
有没有人尝试过将DJI mobile SKD与任何跨平台开发框架一起使用? Ionic、React-Native 还是 Flutter?
可能吗?
如果他们没有可用的 Cordova 插件,它就无法开箱即用。至少在 Ionic 中没有。
为了让它工作,您需要将插件的 API 暴露给它的 JavaScript 对应部分,以便 Cordova 知道如何调用某些函数。
我们目前正在为 DJI MSDK 开发一个 React Native 包装器。欢迎查看我们的 repo
2022年的Flutter插件
这是一个可用于开发 cross-platform DJI iOS 和 Android 应用程序的库。
该库仍在开发中,请阅读以下内容:
是的,您可以使用 React Native。您需要为 DJI SDK 中的每个 feature/class 分别构建您想要实现的 iOS 和 Android 的自定义原生模块。所以你需要很好地理解它们是如何工作的。
例如下面是一个 objective C 存根。您可以在 ObjC/Swift、Java/Kotlin 中构建本机模块,有关其工作原理的更多信息可在 RN docs.
中找到
@implementation RCTDJIWaypointMission
RCT_EXPORT_MODULE(DJIWaypointMission)
RCT_REMAP_METHOD(loadMission, loadMission:(NSDictionary*)mission resolver:(RCTPromiseResolveBlock)resolve rejector:(RCTPromiseRejectBlock)reject) {
// method body
}
import { NativeModules } from 'react-native'
const { DJIWaypointMission } = NativeModules
DJIWaypointMission.loadMission(mission)
有没有人尝试过将DJI mobile SKD与任何跨平台开发框架一起使用? Ionic、React-Native 还是 Flutter?
可能吗?
如果他们没有可用的 Cordova 插件,它就无法开箱即用。至少在 Ionic 中没有。
为了让它工作,您需要将插件的 API 暴露给它的 JavaScript 对应部分,以便 Cordova 知道如何调用某些函数。
我们目前正在为 DJI MSDK 开发一个 React Native 包装器。欢迎查看我们的 repo
2022年的Flutter插件
这是一个可用于开发 cross-platform DJI iOS 和 Android 应用程序的库。
该库仍在开发中,请阅读以下内容:
是的,您可以使用 React Native。您需要为 DJI SDK 中的每个 feature/class 分别构建您想要实现的 iOS 和 Android 的自定义原生模块。所以你需要很好地理解它们是如何工作的。
例如下面是一个 objective C 存根。您可以在 ObjC/Swift、Java/Kotlin 中构建本机模块,有关其工作原理的更多信息可在 RN docs.
中找到@implementation RCTDJIWaypointMission
RCT_EXPORT_MODULE(DJIWaypointMission)
RCT_REMAP_METHOD(loadMission, loadMission:(NSDictionary*)mission resolver:(RCTPromiseResolveBlock)resolve rejector:(RCTPromiseRejectBlock)reject) {
// method body
}
import { NativeModules } from 'react-native'
const { DJIWaypointMission } = NativeModules
DJIWaypointMission.loadMission(mission)