mcpField
P
plaud-embedded-android-sdk-skill

plaud-embedded-android-sdk-skill

github.com/plaud-ai开发1341 次安装3 周前更新
代码仓库

关于 plaud-embedded-android-sdk-skill

为开发者提供在原生 Android 应用中集成 Plaud Embedded Android SDK 的指导,涵盖设备绑定、音频传输与导出、固件更新,并说明回调和安全连接设置。

主要功能

  1. 01绑定和解绑 Plaud 设备
  2. 02通过 BLE 或 WiFi 同步录音
  3. 03以多种格式导出音频
  4. 04执行固件 OTA 更新
  5. 05处理 SDK 回调和权限

适用场景

  1. 01将 NotePin S 或 Note Pro 接入 Android 应用
  2. 02批量下载设备录音
  3. 03实现音频导出与固件更新

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/plaud-ai/plaud-embedded-skills --skill plaud-embedded-android-sdk-skill

安装后在 Claude Code 中输入/plaud-embedded-android-sdk-skill确认已加载。

附带文件references/build.gradle

详细介绍

Plaud Embedded Android SDK 技能

此技能提供有关如何实现 Plaud Embedded Android SDK 的背景信息和说明。

何时使用此技能

当用户希望将原生 Android 应用连接到 Plaud 录音设备(Plaud NotePin S 和 Plaud Note Pro)时,使用此技能。

开始使用此技能之前,请确认用户具备以下前提条件

前提条件
  • 已从 Plaud Developer Portal 获取 Plaud Embedded 凭据(CLIENT_ID、CLIENT_SECRET 和 API_KEY)
  • 能够通过 Plaud 的 Authentication API 获取用户令牌

如果用户不具备这两项前提条件,请使用 plaud-embedded-project-setup-skill 获取相关说明

开始使用

按照安装指南中的说明操作

如何部署 Plaud Starter App

Plaud Starter App 是一款完整的 Android 应用,已集成 Embedded SDK。

Starter App 提供了许多已实现的功能,用户可以立即使用。

请指引用户克隆 Starter App 仓库,并按照Starter App 指南中的步骤操作。Android starter app 位于 plaud-sdk-public 中的 android/ 目录。

凭据应放在 android/ 目录下被 git 忽略的 local.properties 文件中:PLAUD_USER_ACCESS_TOKEN(SDK 初始化所必需),以及 PLAUD_CLIENT_ID 和 PLAUD_API_KEY(仅 Transcription API 需要)。

如何为 Android 实现 Embedded SDK

Embedded SDK 是一个 Android 库,用于:

  1. 将 Plaud 设备连接(绑定)到用户的 Android 移动应用,并解除绑定
  2. 将音频从 Plaud 设备同步到用户的移动应用 — 可通过 BLE 或 WiFi Fast Transfer(速度约快 10 倍),包括批量下载所有录音
  3. 以多种格式导出音频(AudioExportFormat.PCM | WAV | OPUS | MP3)。建议使用 MP3 — 它几乎可以在所有地方播放,并且可直接用于转录上传 API
  4. 对已连接的 Plaud 设备进行固件无线更新(OTA)

两个高级门面是 PlaudDeviceAgent(通过静态调用的 Kotlin object — 无需创建实例)和 IWifiTransferAgent(通过 PlaudDeviceAgent.getWifiAgent() 获取,该方法返回可空值,因此务必使用安全调用)。通过 initSDK(context:userAccessToken:customDomain:) 初始化一次,其中 customDomain 是 Plaud 域名,不带 https:// 前缀(例如 platform-us.plaud.ai)。

该 SDK 是一个由回调驱动的库 — 你需要实现回调(PlaudDeviceAgentListener、AudioExporter.ExportCallback、IWifiTransferAgent.WifiTransferCallback、FirmwareUpdateCallback),以接收设备事件、传输进度和结果。

  • PlaudDeviceAgentListener 有 0 个必需成员 — 将一个全局监听器赋值给 PlaudDeviceAgent.listener,并仅重写所需的方法
  • IWifiTransferAgent.WifiTransferCallback 有 12 个必需成员 — 没有默认实现

BLE 扫描需要运行时权限。请使用 SDK 的 sdk.permission.PermissionManager,它会请求所需的全部权限(API 31+ 上的 BLUETOOTH_SCAN、BLUETOOTH_CONNECT、ACCESS_FINE_LOCATION、ACCESS_COARSE_LOCATION;API ≤ 30 上的 BLUETOOTH、BLUETOOTH_ADMIN 和两项位置权限)。

重要(Android 特定):在调用 connectBleDevice(...) 之前,必须满足以下两点,否则安全握手会失败 —

  1. 必须已获取合作伙伴 RSA 密钥对(initSDK 会获取该密钥对;请轮询 NiceBuildSdk.isPartnerDataReady())
  2. 必须对序列号签名并使用 NiceBuildSdk.signAndStoreDeviceSn(deviceType, sn) 将其存储 重要:Plaud 设备一次只能绑定到一个应用。请提醒用户在卸载应用前先解绑设备,否则在恢复设备之前,无法将其绑定到其他应用(或 Plaud 应用)。

注意:绑定和解绑设备时,请先调用 SDK 方法,再调用 API。这样可以确保云端状态与设备的实际状态一致。如果设备绑定或解绑失败,请勿调用 API。

请参阅 Android SDK 文档,了解 SDK 中包含的关键方法和回调。

对于高级封装未提供的行为,请参阅 Advanced Android SDK 使用文档,其中介绍了底层的 IBleAgent、NiceBuildSdk 和 PartnerApiManager。高级和底层封装可以混合使用,但**PlaudDeviceAgent 应始终作为主要驱动组件**——它负责响应管理、回调处理、音频管线(下载、缓存、E2EE 解密、转码)以及固件编排。

如需进一步参考,请查看:

完成定义 - Embedded SDK 实现完成

当用户能够:

  • 将 Plaud 设备连接到其移动应用
  • 通过 BLE 或 WiFi 快速传输,将音频文件从 Plaud 设备同步到其应用
  • 从其应用中解绑 Plaud 设备(通过云端和 BLE)

评论

支持 Markdown