下载语音包

更新时间:2023-05-22 06:38:30下载pdf

扫地机 SDK 提供语音包下载、监听进度等功能。

涂鸦 IoT 平台上暂无语音包配置页面,您需要联系您的涂鸦客户经理协助配置。

功能入口

新旧版本入口不同。更多详情,请参考 扫地机 SDK 版本变更部分。

  • 旧版本的入口(0.1.0 之前版本)为 ITuyaSweeper

    ITuyaSweeper  iTuyaSweeper = TuyaHomeSdk.getSweeperInstance()
    
  • 新版本的入口(0.1.0 以后版本)为 ITuyaSweeperKit

    ITuyaSweeperKitSdk iTuyaSweeperKitSdk = TuyaOptimusSdk.getManager(ITuyaSweeperKitSdk.class);
    
    ITuyaSweeperFileDownload iTuyaSweeperFileDownload = iTuyaSweeperKitSdk.newFileDownloadInstance(devId);
    

获取语音文件列表

  • 老版本(0.1.0 之前版本):不支持
  • 新版本(0.1.0 以后版本):支持

接口说明

void getFileList(final ITuyaResultCallback<ArrayList<SweeperFileListInfoBean>> callback);

SweeperFileListInfoBean 数据结构

字段 类型 描述
id long 语音文件 ID
name String 语音文件名称
desc String 语音文件描述
auditionUrl String 试听语音文件 URL
officialUrl String 正式语音文件 URL
imgUrl String 语音文件图标 URL
region List 国家或地区码

代码示例

ITuyaSweeperKitSdk iTuyaSweeperKitSdk = TuyaOptimusSdk.getManager(ITuyaSweeperKitSdk.class);

ITuyaSweeperFileDownload iTuyaSweeperFileDownload = iTuyaSweeperKitSdk.newFileDownloadInstance(devId);

iTuyaSweeperFileDownload.getFileList(new ITuyaResultCallback<ArrayList<SweeperFileListInfoBean>>() {
	@Override
	public void onSuccess(ArrayList<SweeperFileListInfoBean> result) {

	}

	@Override
	public void onError(String errorCode, String errorMessage) {

	}
});

注册和反注册进度监听

  • 老版本(0.1.0 之前版本):不支持
  • 新版本(0.1.0 以后版本):支持

接口说明

void registerDownloadListener(final ISweeperFileDownloadListener listener)

void unRegisterDownloadListener();

ISweeperFileDownloadListener 数据结构

/**
 *
 * @param type 文件类型,语音文件是 DOWNLOAD_VOICE
 * @param fileDownloadEnum 枚举,包含下载完成、下载失败
 */
void onResultStatus(String type, SweeperFileDownloadEnum fileDownloadEnum);

/**
 *
 * @param type
 * @param progress 下载进度
 */
void onProgress(String type, int progress);

代码示例

ITuyaSweeperKitSdk iTuyaSweeperKitSdk = TuyaOptimusSdk.getManager(ITuyaSweeperKitSdk.class);

ITuyaSweeperFileDownload iTuyaSweeperFileDownload = iTuyaSweeperKitSdk.newFileDownloadInstance(devId);

iTuyaSweeperFileDownload.registerDownloadListener(new ISweeperFileDownloadListener() {
	@Override
	public void onResultStatus(String type, SweeperFileDownloadEnum fileDownloadEnum) {

	}

	@Override
	public void onProgress(String type, int progress) {

	}
});
iTuyaSweeperFileDownload.unRegisterDownloadListener();

确认下载语音文件

  • 老版本(0.1.0 之前版本):不支持
  • 新版本(0.1.0 以后版本):支持

接口说明

/**
 *
 * @param fileId 语音文件 ID
 * @param callback
 */
void confirmDownload(long fileId, final ITuyaResultCallback<Integer> callback);

代码示例

ITuyaSweeperKitSdk iTuyaSweeperKitSdk = TuyaOptimusSdk.getManager(ITuyaSweeperKitSdk.class);

ITuyaSweeperFileDownload iTuyaSweeperFileDownload = iTuyaSweeperKitSdk.newFileDownloadInstance(devId);

iTuyaSweeperFileDownload.confirmDownload(1000, new ITuyaResultCallback<Integer>() {
	@Override
	public void onSuccess(Integer result) {

	}

	@Override
	public void onError(String errorCode, String errorMessage) {

	}
});

获取文件下载进度

  • 老版本(0.1.0 之前版本):不支持
  • 新版本(0.1.0 以后版本):支持

接口说明

void queryProgress(final ITuyaResultCallback<SweeperProgressbean> callback);

SweeperProgressbean 数据结构

字段 类型 描述
id long 语音文件 ID
rate int 下载进度
status int 下载状态
  • 0:未下载
  • 1:下载中

代码示例

ITuyaSweeperKitSdk iTuyaSweeperKitSdk = TuyaOptimusSdk.getManager(ITuyaSweeperKitSdk.class);

ITuyaSweeperFileDownload iTuyaSweeperFileDownload = iTuyaSweeperKitSdk.newFileDownloadInstance(devId);

iTuyaSweeperFileDownload.queryProgress(new ITuyaResultCallback<SweeperProgressbean>() {
	@Override
	public void onSuccess(SweeperProgressbean result) {

	}

	@Override
	public void onError(String errorCode, String errorMessage) {

	}
});

结束语音文件下载

  • 老版本(0.1.0 之前版本):不支持
  • 新版本(0.1.0 以后版本):支持

退出下载时,请调用结束下载接口,避免造成进程资源浪费。

接口说明

void onDestroy();