涂鸦智能安卓版摄像机(IP Camera,简称 IPC)SDK 是基于智能生活 App SDK 开发而成。
通过移动应用控制物理网设备是常见的使用场景,但由于设备的品类丰富,增大了应用开发难度。因此 智能生活 App SDK 提供了常见的垂直品类 SDK,例如 IPC SDK,将网络摄像机设备特有的功能抽离,提供了与其通讯的接口封装,加速应用开发过程。
大家可以通过本教程,在一小时内快速开发一款自己的 IoT App,并实现如下功能:
- 通过 App 连接一个智能摄像头。
- 预览摄像机实时采集的影像。
- 播放摄像机存储卡中录制的视频。
- 手机端录制摄像机采集的影像。
大家可以 前往App工作台 下载 Sample 查看本教程中的示例代码。本次教程按功能模块进行分类,大家可以快速找到对应的代码参考学习。
效果展示
学习完本教程,结合一定的面板开发可以创建一个类似以下安卓 App 的 Demo。
准备工作
在开始本教程前,请先确保完成一下工作 :
- 在涂鸦 IoT 平台,注册账号并创建 App 应用,拿到 SDK 的 AppKey,AppSecret。
由于 IPC SDK 依赖于 智能生活 App SDK,需要先实现如创建账号、添加家庭的操作后才能借助 IPC SDK 实现摄像机相关功能。具体操作流程可参考我上一篇文章《智能生活 App SDK 开发入门教程》。
- 准备一个涂鸦赋能的智能摄像机产品,本教程以摄像头为例。
- 使用 Android Studio 将涂鸦安卓智能生活 App SDK 集成到项目中 。 具体教程可参考我之前文章《 IPC SDK 架构及快速集成配置》。
设备配网
由涂鸦赋能的智能摄像机支持智能生活 App SDK 中的所有配网方式,例如 Wi-Fi 热点配网和蓝牙配网等。
此外,涂鸦为 IPC 设备提供了独有的扫描二维码配网功能,但如果 IP 摄像机设备无法扫码,可以优先尝试 Wi-Fi 快连方式。本篇教程文档主要讲解扫描二维码配网。
获取 Token
和 Wi-Fi 快连和 Wi-Fi 热点模式类似,开始配网之前,SDK 需要在手机已联网的状态下从涂鸦获取配网 Token,然后才可以开始配网。
配网 Token 的有效期为 10 分钟,且配置成功后就会失效,再次配网需要重新获取。获取 Token 需要上传当前的 homeId
,因此我们需要确保用户处于登录状态,并至少创建了一个家庭。
TuyaHomeSdk.getActivatorInstance().getActivatorToken(homeId,
new ITuyaActivatorGetToken() {
@Override
public void onSuccess(String token) {
}
@Override
public void onFailure(String s, String s1) {
}
});
生成配网二维码
获取到配网 Token 后,我们还需要当前 Wi-Fi 的名称(SSID)和密码,通过初始化配网参数的回调 onQRCodeSuccess
,拿到二维码的 URL 字符串生成一个二维码图片。
相关依赖为 zxing
(implementation ‘com.google.zxing:core:3.2.1’
)。
// Get Network Configuration Token
TuyaHomeSdk.getActivatorInstance().getActivatorToken(homeId,
new ITuyaActivatorGetToken() {
@Override
public void onSuccess(String token) {
//Create and show qrCode
TuyaCameraActivatorBuilder builder = new TuyaCameraActivatorBuilder()
.setToken(token)
.setPassword(wifiPwd)
.setTimeOut(100)
.setContext(QrCodeConfigActivity.this)
.setSsid(wifiSSId)
.setListener(new ITuyaSmartCameraActivatorListener() {
@Override
public void onQRCodeSuccess(String qrcodeUrl) {
final Bitmap bitmap;