云存储服务 UI 业务包

更新时间:2023-07-13 07:14:42下载pdf

涂鸦智能摄像机提供云存储视频服务,通过此 UI 业务包,用户可以开通云存储服务。开通云存储服务后,可以通过云存储查看和播放云存储视频。

准备工作

  • 在集成之前,请先熟悉 UI 业务包 的准备工作和接入流程。详情请参考 框架接入

  • 请确保在您的主工程目录下,已经添加了 thing_custom_config.json 文件,并按文档正确地配置了 thingAppKey,避免导致云存储服务购买页面无法正常加载。

接入组件

在工程的 Podfile 文件中添加云存储服务业务包组件,并执行 pod update 命令

source "https://github.com/tuya/tuya-private-specs"
source 'https://cdn.cocoapods.org/'
platform :ios, '11.0'

target 'your_target_name' do
# 添加云存储服务业务包
pod 'ThingSmartCloudServiceBizBundle'
end

跳转至云存储服务购买页面

第一步:导入相关头文件

Objc

#import <ThingModuleServices/ThingCameraCloudServiceProtocol.h>

Swift

可以在 xxx_Bridging-Header.h 桥接文件中添加以下内容:

#import <ThingModuleServices/ThingCameraCloudServiceProtocol.h>

第二步:跳转到云存储服务购买页面

调用说明

  • 调用接口之前,务必确认用户已登录。

  • 云存储服务与设备一一对应,在获取云存储服务页面时,您需要传入对应设备的 ThingSmartDeviceModel

  • 获取云存储服务页面为 UIViewController,请使用 UINavigationController 进行 pushpresent 展示。

    • 云存储服务与用户信息强相关。
    • 云存储服务购买页面依赖导航控制器,且会设置导航栏内容,因此需要导航控制器进行包装。

示例代码

Objc

id<ThingCameraCloudServiceProtocol> impl = [[ThingSmartBizCore sharedInstance] serviceOfProtocol:@protocol(ThingCameraCloudServiceProtocol)];
[impl requestCloudServicePageWithDevice:self.deviceModel completionBlock:^(__kindof UIViewController *page, NSError *error) {
    if (page) {
        [self.navigationController pushViewController:page animated:YES];
    }
}];

Swift

let impl = ThingSmartBizCore.sharedInstance().service(of: ThingCameraCloudServiceProtocol.self)
(impl as? ThingCameraCloudServiceProtocol)?.requestCloudServicePage(deviceModel, completionBlock: { (page, error) in
        guard let cloudServiceVc = page {
            print("\(error!)")
        return
    }
    yourNaviController.pushViewController(cloudServiceVc, animated: true)
})

查看和播放云存储视频

开通云存储服务后,可以查看和播放云存储视频。详细 API 请参考 云存储