编译 Sample

2023-12-11
暂无评分

获取代码包

获取地址:https://github.com/dji-sdk/Edge-SDKopen in new window

工程目录结构

以下目录结构仅供参考,请以实际获取软件包结构为准。

.
├── doc   // 文档介绍
├── examples  // demo 实现源码
│   ├── cloud_api
│   ├── common
│   │   └── data
│   │       └── tensorflow
│   ├── init
│   ├── liveview
│   ├── media_manager
│   └── test
├── include // Edge-SDK 库头文件
│   ├── cloud_api
│   ├── error_code
│   ├── init
│   ├── liveview
│   ├── logger
│   └── media_manager
├── lib // Edge-SDK 静态库
│   ├── aarch64
│   └── x86_64
└── third_party  // 第三方编译依赖cmake

开发者信息认证

  1. 开发者网站open in new window中通过点击 “应用 > 创建应用”自行填写信息,用于申请 ESDK 应用程序。
  2. 在 ESDK 工程中的/examples/init/app_info.h 文件修改对应的开发者信息和 License。

安全通信密钥配置

开发者需要实现获取密钥的接口,并自行保证密钥安全性。

Edge SDK 在/examples/init/key_store_default.cc 目录中,提供缺省默认实现方法。需要注意的是,绑定后边缘计算设备的后续的使用每次重新上电,密钥读取接口获取的密钥都应保持不变。提供的缺省实现密钥是保存在/tmp/目录,重新上电将会丢失!

// 开发者需要实现通信密钥获取接口,接口定义如下:
class KeyStore {
   public:
    KeyStore() = default;
    virtual ~KeyStore() {}

    KeyStore(const KeyStore&) = delete;
    KeyStore& operator=(const KeyStore&) = delete;

    /* @brief Returns RSA2048 DER private key.
     * @return Execution result.
     */
    virtual ErrorCode RSA2048_GetDERPrivateKey(
        std::string& private_key) const = 0;

    /* @brief Returns RSA2048 DER public key.
     * @return Execution result.
     */
    virtual ErrorCode RSA2048_GetDERPublicKey(
        std::string& public_key) const = 0;
};

编译示例代码

在 ESDK 工程根目录执行命令 mkdir build && cd build && cmake .. && make -j4

若您对文档有意见或疑惑,点击可快速反馈,我们会与您联系。