鹤梦信息帮助中心
Android相关问题

1. 用户账号管理



汇云 App SDK 支持手机号码、邮箱、三方平台等多种用户账号类型。


账号类型

手机账号支持密码登录。

邮箱账号支持密码登录。

三方平台登录支持常见的平台账号授权登录,比如微信、QQ、苹果、谷歌、Twitter。


功能说明

在该模块中,您将频繁地调用对象 IZJViewerUser。它是一个单例,存储了当前用户的所有信息及相关的登录注册方法。其数据模型如下表所示:


用户账户信息:UserBean


用户公开信息:UserVCardBean

2. 设备管理


设备管理主要提供设备相关的操作,包含设备状态变化监听、设备重命名、设备固件升级、设备移除、设备网络设置等操作。


功能说明

设备管理相关类:

类名

说明

IZJViewerDevice

设备信息配置管理

IZJViewerGroup

组内设备的管理

IZJViewerGroupManager

组信息管理

DeviceBean

设备数据模型

初始化设备

根据设备ID去初始化设备控制类,错误的设备 ID 可能会导致初始化失败,此时设备的实例返回 null。


接口说明

/**

* 创建设备操作类实例

* @param deviceId      设备ID

* @return

*/

public IZJViewerDevice newDeviceInstance(String deviceId)


示例代码

IZJViewerDevice viewerDevice = ZJViewerSdk.getInstance().newDeviceInstance("deviceId");


回调监听

实现IDeviceCfgUpdateListener和IDeviceStatusListener回调接口后,您可以在设备状态和设备配置变更的回调中进行处理,刷新 App 设备控制面板的 UI。


示例代码

ZJViewerSdk.getInstance().registerDeviceCfgUpdateListener(new IDeviceCfgUpdateListener() {

@Override

public void onDeviceConfigUpdate(String deviceId, DeviceCfgItemEnum deviceCfgItem) {

Log.i(TAG, "deviceId = " + deviceId + "config change = " + deviceCfgItem);

}

});


ZJViewerSdk.getInstance().registerDeviceStatusListener(new IDeviceStatusListener() {

@Override

public void onDeviceStatusChange(String groupId, String deviceId, DeviceStatusEnum deviceStatus) {

Log.i(TAG, "deviceId = " + deviceId + "status change = " + deviceStatus);

}

});


初始化组

根据组ID去初始化组控制类,错误的组 ID 可能会导致初始化失败,此时组的实例返回 null。组 ID 是通过IZJViewerGroupManager单例获取组列表遍历获取或者直接从DeviceBean模型下的groupId获取。


接口说明

/**

* 创建组操作类实例

* @param groupId       组ID

* @return

*/

public IZJViewerGroup newGroupInstance(String groupId)

示例代码

IZJViewerGroup viewerGroup = ZJViewerSdk.getInstance().newGroupInstance("groupId");


查询设备信息

查询设备的配置信息

/**

* 获取设备配置信息

* @return

*/

DeviceBean getDeviceInfo();


示例代码

IZJViewerDevice viewerDevice = ZJViewerSdk.getInstance().newDeviceInstance("deviceId");

viewerDevice.getDeviceInfo();

修改设备名称

/**

* 修改设备名称

* @param deviceName    设备名称

* @param callback

* @return

*/

ITask setDeviceName(String deviceName, IResultCallback callback);


示例代码

IZJViewerDevice viewerDevice = ZJViewerSdk.getInstance().newDeviceInstance("deviceId");

viewerDevice.setDeviceName("new device name", new IResultCallback() {

@Override

public void onSuccess() {


}


@Override

public void onError(int errorCode) {


}

});

移除设备

设备被移除后,会是无主状态,在设备同一局域网下,可以通过局域网搜索添加。


接口说明

/**

* 删除设备

* @param deviceId      设备ID

* @param callback

* @return

*/

ITask removeDevice(String deviceId, IResultCallback callback);


示例代码

IZJViewerGroup viewerGroup = ZJViewerSdk.getInstance().newGroupInstance("groupId");

viewerGroup.removeDevice("deviceId", new IResultCallback() {

@Override

public void onSuccess() {


}


@Override

public void onError(int errorCode) {


}

});


获取设备网络信息

查询设备当前配置的网络信息,回调返回NetworkBean模型


接口说明

/**

* 获取设备当前连接网络信息

* @param callback

* @return

*/

ITask getCurNetworkInfo(ICurNetWorkCallback callback);


示例代码

IZJViewerDevice viewerDevice = ZJViewerSdk.getInstance().newDeviceInstance("deviceId");

viewerDevice.getCurNetworkInfo(new ICurNetWorkCallback() {

@Override

public void onSuccess(NetworkBean netWorkInfo) {


}


@Override

public void onError(int errorCode) {


}

});


3. 设备配网


汇云 App SDK 提供了把摄像机设备配置上路由器或网关的能力。以常见的 Wi-Fi直连配网为例,设备重置开启AP热点模式,APP直连热点后传输配网信息(SSID、密码、组ID等)。智能设备接收到后,开始快速激活,同时连接到 App 和云端,开启设备上云的第一步。


配网方式

设备配网支撑的具体能力包括:

AP热点配网

摄像头扫二维码配网

有线设备配网


名词解释

名词

说明

Wi-Fi设备

采用Wi-Fi 模组连接路由器,和   App 以及云端进行数据交互的智能设备。

AP热点配网

APP先连接设备AP热点,建立一个socket连接,然后APP给设备下发Wi-Fi数据进行配网。

摄像头扫二维码配网

摄像头设备通过扫描 App 上的二维码,来获取配网数据信息进行配网。

有线配网

通过有线网络连接路由器的设备。

功能说明

名词解释



功能说明



4. 视频管理


视频管理主要是通过ZJMediaRenderView类来实现视频的操作管理,包括实时视频、录像回放、视频下载等。


功能说明



播放器初始化

根据设备ID、放置播放器的视图、镜头校正模式去初始化设备控制类,错误的设备 ID可能会导致初始化失败。


接口说明

/**

* 初始化流

* @param deviceId          设备唯一标识

* @param mode          鱼眼类型

* @param streamChannelCreatedCallback

* @param firstVideoFrameShowCallback

* @param playCallback

*/

public void initStream(String deviceId, VRMode mode,

StreamChannelCreatedCallback streamChannelCreatedCallback,

FirstVideoFrameShowCallback firstVideoFrameShowCallback,

PlayCallback playCallback)


示例代码

ZJMediaRenderView mediaRenderView = new ZJMediaRenderView(context);

mediaRenderView.initStream("deviceId", VRMode.None,

new ZJMediaRenderView.StreamChannelCreatedCallback() {

@Override

public void onStreamChannelCreated() {


}

},

new ZJMediaRenderView.FirstVideoFrameShowCallback() {

@Override

public void onFirstVideoFrameShow() {


}

},

new ZJMediaRenderView.PlayCallback() {

@Override

public void onPlayState(VODTypeEnum vodType, int error) {


}

});


打开实时视频

在初始化播放器完成以后,就可以通过启动流接口打开播放器来观看实时视频。

接口说明

/**

* 开启实时视频流

* @param streamIndex   码流ID(0主码流 1次码流)

* @param talkVolumeCallback

*/

public void startRealTimeStream(int streamIndex, TalkVolumeCallback talkVolumeCallback)


示例代码

mediaRenderView.startRealTimeStream(0, new ZJMediaRenderView.TalkVolumeCallback() {

@Override

public void onProgressChange(int progress) {


}

});

打开录像视频

录像视频分为本地录像视频和云端录像视频。


接口说明

/**

* 开启设备端录像视频流

* @param startTime     起始时间

* @param timeStampChangedCallback

*/

public void startRecordStream(String startTime, TimeStampChangedCallback timeStampChangedCallback)


示例代码

mediaRenderView.startRecordStream("2020-01-01 01:01:01",

new ZJMediaRenderView.TimeStampChangedCallback() {

@Override

public void onTimeStampChanged(int timestamp) {


}

});

接口说明

/**

* 开启云端录像视频流

* @param startTime     起始时间

* @param timeStampChangedCallback

*/

public void startCloudStream(String startTime, TimeStampChangedCallback timeStampChangedCallback)


示例代码

mediaRenderView.startCloudStream("2020-01-01 01:01:01",

new ZJMediaRenderView.TimeStampChangedCallback() {

@Override

public void onTimeStampChanged(int timestamp) {


}

});

切换视频流

在观看实时视频的时候进行视频分辨率的切换(0 超清  1 高清)。


接口说明

/**

* 切换流

* @param streamIndex       码流ID(0主码流 1次码流)

*/

public void switchStream(int streamIndex)


示例代码

//切换为次码流(高清)

mediaRenderView.switchStream(1);

//切换为主码流(超清)

mediaRenderView.switchStream(0);

停止视频播放

对视频流进行关闭操作,停止视频播放。


接口说明

/**

* 停止视频播放

*/

public  void stopStream()


示例代码

mediaRenderView.stopStream();


5. 快速集成


本主题介绍如何手动将汇云 Android App SDK快速集成到您的项目中。汇云SDK 要求 Android版本不低于 4.4。


集成SDK

第一步:创建 Android 工程

在 Android Studio 中新建工程。


第二步:配置 build.gradle 文件

在安卓项目的 build.gradle 文件里,添加集成准备中下载的 dependencies 依赖库。

android {

defaultConfig {

ndk {

abiFilters "armeabi-v7a", "arm64-v8a"

}

}

}

dependencies {

// App SDK 最新稳定安卓版:

implementation (name: 'ZJViewer_V2.0.0', ext: 'aar')

}

初始化SDK

请勿在 Application 中初始化 SDK,可在主界面onCreate中初始化:

接口1:默认正式环境

/**

* 初始化SDK

* @param context       上下文

* @param configPath    SDK配置路径,建议/data/data/package/files目录

* @param cachePath     SDK缓存路径,用于缓存图片、视频等

* @param companyId     公司ID

* @param appId         应用ID

* @return

*/

public boolean init(Context context, String configPath, String cachePath, String companyId, String appId)

接口2:可切换SDK环境

/**

* 初始化SDK

* @param context       上下文

* @param configPath    SDK配置路径,建议/data/data/package/files目录

* @param cachePath     SDK缓存路径,用于缓存图片、视频等

* @param companyId     公司ID

* @param appId         应用ID

* @param serverEnv     服务器环境

* @return

*/

public boolean init(Context context, String configPath, String cachePath, String companyId, String appId, ServerEnvEnum serverEnv)


示例代码:

ZJViewerSdk.getInstance().init(context, context.getFilesDir().getAbsolutePath(),

context.getFilesDir().getAbsolutePath(),"company_id", "app_id");


开启或关闭日志

在 debug 模式下,您可以开启 SDK 的日志开关,查看更多的日志信息,帮助您快速定位问题。


在 release 模式下,建议关闭日志开关。

/**

* 设置调试模式

* @param debugMode

*/

public void setDebugMode(boolean debugMode);


混淆配置

在 proguard-rules.pro 文件配置相应混淆配置:

-keep class com.chinatelecom.smarthome.viewer.** { *;}


6. 集成Push


基于 汇云 SDK 开发的 App,汇云 平台支持主流三方 Push 功能,包括:个推、小米、华为、OPPO、VIVO、阿里云,支持给用户发送运营 Push 和产品的告警 Push。


设置推送

APP需要集成各个三方平台推送SDK,获取三方平台生成Push Token或ID,调用汇云 APP SDK的设置推送接口,上报汇云平台。


推送相关的类



接口说明

/**

* 设置推送token,用于接收推送

* @param pushPlatform      推送平台

* @param pushToken         推送Token

* @param callback

* @return

*/

ITask setPushToken(PushPlatformEnum pushPlatform, String pushToken, IResultCallback callback);


示例代码

IZJViewerUser viewerUser = ZJViewerSdk.getInstance().getUserInstance();

viewerUser.setPushToken(PushPlatformEnum.GETUI, "pushToken", new IResultCallback() {

@Override

public void onSuccess() {


}


@Override

public void onError(int errorCode) {


}

});


7. 错误代码


枚举定义(ErrorEnum)

错误码

描述

ERR

-1


ERR_PARAM

-2


ERR_NOMEM

-3


ERR_NOINIT

-4


ERR_NORES

-5


ERR_OVERFLOW

-6


ERR_MAGIC_N

-7


ERR_KEY_UNEXIST

-8


ERR_FILE_EXIST

-9


ERR_AUTHORITY

-10


ERR_CLOSE

-11


ERR_SUPPORT

-12


ERR_NOADDR

-13


ERR_FREQUENTLY

-14


ERR_TRYAGAIN

-15


ERR_FULL

-16


ERR_NET

-80


ERR_TIMEOUT

-83


DES_CHANGE

-100


ERR_FILEEND

-101


ERR_FILEWAIT

-102


ERR_EXIST

-110

已存在

SUCCESS

0

请求成功

CHARACTER

1001

配置WiFi时,传入SSID有无效字符

NO_WIFI_MODULE

1002

查询WiFi列表,设备没有WiFi模块

WIFI_IS_CLOSE

1003

查询WiFi列表,WiFi模块关闭

SIGN_NO_SVR_DISTRI

1101

SIGN分配服务时,没有可分配服务

FREQUENT_OPERATION

1103

访问频繁

COMPANY_ID_INVALID

1111

鉴权的企业ID不存在

COMPANY_NO_PRIVILEGE

1112

鉴权的企业ID对应的企业被平台禁用

APP_ID_INVALID

1113

鉴权传入的AppID在企业下不存在

APP_ID_NO_PRIVILEGE

1114

鉴权传入的AppID被企业/平台禁用

LICENSE_NOT_EXIST

1115

传入授权的CTEI码没有找到

LICENSE_EXPIRE

1116

传入授权的CTEI码已经过期

LICENSE_DISABLE

1117

授权用的CTEI码被平台禁用

APP_HAVE_NO_LICENSE_COUNT

1118

按量授权的AppID下无可用的授权数量

DEVICE_NO_THERE

1121

设备登陆传入的设备ID无效,设备收到该错误码,重新注册新的ID

DEVICE_DISABLE

1122

该设备被平台禁用,设备无法上云

DEVICE_VERSION_DISABLE

1123

设备版本太旧,系统不再兼容。设备此时需要进行升级

DEVICE_SVR_CALL_FAILED

1131

设备配置管理系统访问报错

DEVICE_NO_BUSI_CONFIG

1141

设备尚未上传业务配置

RESOLUTION_ABILITY_NOT_SUPPORT

1142

设置的设备分辨率,当前设备不支持

RESOLUTION_BUSI_NOT_SUPPORT

1143

设置的设备分辨率,可能因业务限制不支持(授权限制)

PTZ_IS_MAX

1144

设备执行PTZ已经转到最大值

EXIT_GROUP_ERR

1146

设备要出的组,不是设备当前的组,出组失败

SDCARD_FORMATTING_ERR

1148

设备格式化SD失败

SDCARD_NOT_EXIST

1149

格式化SD卡时,SD卡不存在

SDCARD_WR_ERR

1150

读写SD卡时,操作失败

ADD_CHILD_DEVICE_TIMEOUT

1151

添加HUB子设备时,通信超时,失败

CHILD_DEVICE_EXIST

1152

添加HUB子设备时,设备ID重复

HUB_OPT_ERR

1153

HUB发生异常,操作失败

QUERY_RECORD_NO_PRIVILEGE

1154

当前查询记录没有操作权限

CLOUD_SVR_CALL_FAILED

1155

无法访问当前云存记录服务

LOCAL_RECORD_NOT_EXIST

1156

当前查询详情的本地记录文件已被清理

CLOUD_FILE_EXPIRE

1157

当前查询的云记录文件已经过期

BIND_CODE_EXIST

1158

绑定码已存在

BIND_CODE_NOT_EXIST

1159

绑定码不存在

BIND_CODE_EXPIRE

1160

绑定码已过期

BIND_CODE_USED

1161

绑定码已使用

ACCOUNT_IS_EXIST

2001

账号已存在

REG_OTHER_ERR

2003

其他注册失败原因

ACCOUNT_NOT_EXIST

2004

账号不存在

USER_ACCOUNT_PWD_ERR

2005

User登录账号密码错误

VERIFY_OPENID_ERR

2006

第三方登陆时,第三方校验失败

ACCOUNT_FORBIDDEN

2007

登陆时,发现账户已经被禁用

UTOKEN_NOT_EXIST

2008

UTOKEN不存在

SMS_CODE_FREQUENT

2009

两次获取短信验证码时间过短,返回失败

USER_REJECT_INVITE

2010

给用户发送分享邀请,被邀请者拒绝

GTOKEN_NOT_MATCH

2011

通过Gtoken入组,Gtoken失效

DEVICE_IS_IN_GROUP

2012

添加设备进组时失败,设备已经加入了另一个组

USER_NO_PRIVILEGE

2013

用户无操作权限

ACCOUNT_TYPE_NOT_SUPPORT

2014

获取短信验证码时,不支持手机邮箱以外的方式获取

ACCOUNT_FORMAT_ERR

2015

账号格式错误

ACCOUNT_ALREADY_BIND

2016

账号已被绑定

ACCOUNT_BIND_ERR

2017

绑定账号错误

FILEID_NOT_EXIST

2018

云存储文件ID不存在

ERR_4GCARDNO_NOT_EXIST

2020

4G卡号不存在

ERR_4GCARDNO_REPORT_ERR

2021

4G卡号汇报失败

APPID_NOTFOUND_TEMPLATE

2027

APPID未找到对应的短信/ems模板

SMS_SEND_FREQUENCY_LIMIT_ERR

2033

单个手机号码在规定时间内短信发送达到上限

SHARE_DEVICE_ERR

2201

分享失败

QRCODE_INVALID

2202

无效的二维码

REMOVE_DEVICE_ERR

2203

设备出组失败

VERIFICATION_CODE_NOT_EXIST

2207

验证码不存在

DEVICE_P2P_NOT_SUPPORT

3001

当用户向设备请求P2P时,设备返回不支持P2P

CONN_NOT_MATCH

3002

用户与设备的P2P连接校验不匹配

MEDIA_MATCH_TIMEOUT

3003

用户和设备在MEDIA上配对超时

MEDIA_CHANNEL_NOT_EXIST

3004

媒体操作时,对应的ChannelID不存在

MEDIA_PLAY_UPPER_LIMIT

3005

点播流媒体时,人数超上限

MEDIA_INVALID

3006

流媒体服务时,资源过期或无效

MALLOC_ERR

4001

服务申请内存对象错误

JSON_DECODE_ERR

4002

服务解析JSON协议错误

JSON_ENCODE_ERR

4003

服务构造JSON字符串错误

API_PARAM_ERR

4004

API调用参数错误

METHOD_ERR

4005

API返回NIL

ENCRYPT_ERR

4006

协议加密错误

DECRYPT_ERR

4007

协议解密错误

BUF_READ_ERR

4008

链接读取BUFFER错误

TLS_PEM_KEY_ERR

4009

TLS链接找不到PEM KEY文件错误

AUTH_ATOKEN_ERR

4010

服务器之间访问调用 ATOKEN出错

REDIS_PUB_ERR

4011

Redis服务访问错误

DB_CONNECT_ERR

4012

数据库连接失败

DB_INSERT_ERR

4013

数据库数据插入失败

DB_SELECT_ERR

4014

数据库数据查询失败

DB_UPDATE_ERR

4015

数据库数据更新失败

DB_DELETE_ERR

4016

数据库数据删除失败

DB_NO_RECORD_ERR

4017

没有找到相关记录

DB_DUPLICATE_KEY

4018

主键重复

NET_LISTEN_ERR

4019

服务端口侦听错误

CLOSED

4020

服务关闭错误

IDSVR_NOT_FOUND

4021

IDSVR服务找不到

IDSTUNSVR_NOT_FOUND

4022

IDSTUN服务找不到

BUSISVR_NOT_FOUND

4023

BUSICENTRE服务找不到

MEDIASVR_NOT_FOUND

4024

媒体服务找不到

LINKSVR_NOT_FOUND

4025

LINK服务找不到

USERSVR_CALL_FAILED

4026

用户系统接口调用失败

IDSVR_CALL_FAILED

4027

IDSVR系统接口调用失败

IDSTUN_CALL_FAILED

4028

IDSTUN系统接口调用失败

PUSHSVR_NOT_FOUND

4029

推送服务找不到

GATEWAYSVR_CALL_FAILED

4030

网关服务调用失败

COMPMNGSVR_CALL_FAILED

4031

企业后台服务调用失败

PUBSUBSVR_NOT_FOUND

4032

订阅发布服务找不到

SYSNOTICESVR_NOT_FOUND

4033

sysnotice找不到

GATEWAYSVR_NOT_FOUND

4034

网关服务找不到

HTTPSVR_NOT_FOUND

4035

http服务找不到

HTTPSVR_CALL_FAILED

4036

http服务调用失败

BUSISVR_CALL_FAILED

4037

busicentre调用失败

ID_CALL_FAILED

4038

IDSVR调用失败

SIGN_CALL_FAILED

4039

SIGN服务调用失败

LINK_CALL_FAILED

4040

Link服务调用失败

LOGSVR_CALL_FAILED

4041

LOG系统调用失败

USERSVR_NOT_FOUND

4042

用户系统找不到

SYSNOTICESVR_CALL_FAILED

4043

sysnotice找不到调用失败

PUBSUBSVR_CALL_FAILED

4044

订阅发布服务调用失败

DYNAMICMETHOD_CALL_FAILED

4045

notice动态调用其他服务失败

PLAYLOAD_IS_FULL

4046

负载为空

GRPCSVR_CALL_FAILED

4047

GRPC调用失败

DEVICESVR_NOT_FOUND

4048

设备系统位找不到

EVENTSVR_NOT_FOUND

4049

事件系统找不到

ZONE_NOT_FOUND

4050

ZONE服务找不到

NET_WRITE_BLOCK

4051

网络通道写入包失败

SOCKET_CLOSED

4052

SOCKET连接已关闭

SOCKET_READERR

4053

SOCKET连接读取包失败

ID_PARSEERR

4054

ID参数解析失败(格式不争取)

NET_DNSPARSE_ERR

4055


NET_REQ_TIMEOUT

4056

网络请求超时

SUBPUB_TOKEN_NOTEXIST

4057


SOCKET_ACCEPT_ERROR

4058


OPERATION_TOO_FREQUENT

4059


PARSE_IP_ERR

4060


GETSVRPUBKEY_ERR

4061

获取pubkey

LINKNOTICESVR_NOT_FOUND

4062

LINKNOTICE找不到

ENCRYPTTYPE_ERROR

4064

加密类型错误

VIDEOSVR_NOT_FOUND

4065

视频存储服务找不到

EXCEPTIONSVR_NOT_FOUND

4066

EXCEPTION服务找不到

LOGSVR_NOT_FOUND

4067

LOGSVR找不到

OPRECORDSVR_NOT_FOUND

4068

OPRECORD服务找不到

NATSTUNSVR_NOT_FOUND

4069

NATSTUN服务找不到

COMBO_CALL_FAILED

4070

套餐服务调用失败

COMBO_NOT_FOUND

4071

套餐服务找不到

GROUPNOTHERE

4407

组不存在

DEVICENOTINGROUP

4409

Device不在组里

WAKEUP_DEVICEERR

4422

唤醒出错

DEVICEOFFLINE

4602

Device不在线

DEVICE_ISSLEEP

4610

设备已休眠

HAVENOGROUPS

4612

没有组列表

REG_AUTH_ERR

5001

SIGN服务注册   SVRID&SVRPWD校验错误

SIGN_ATOKEN_NOT_EXIST

5002

SIGN服务通过SVR   ATOKEN找不到服务

SIGN_MANAGE_NOMETHOD

5004


GENERALUTOKEN_ERR

5005

USI生成UTOKEN错误

USERNOTHERE

5007


USERISINGROUP

5011

用户已经入组

ROLENOTEXIST

5013


CHILDGROUPNOTEXIST

5014


ROLEISINUSE

5015


GROUPISINGROUP

5016


USERNOTINGROUP

5017


GROUPNOTINGROUP

5019


DEVICEISSLEEP

5021


ID_MAXIDINDEX_GETERR

5024


APPNOTEXIST

5026


APPDISABLE

5027


APPAUTHTYPE_ERR

5031


APPISEXIST

5032


ACCOUNTTYPENOTBIND

5034


APPAUTHTYPENOTSUPPORT

5036


DEVICE_NOT_AUTH

5038


UTOKEN_NOT_AUTH

5039


DEVICE_FORBIDDEN

5040


UTOKEN_FORBIDDEN

5041


UTOKEN_CHECKERR

5042


SYSCOMMAND_FAIL

5043


PUSHTEMPLATENOTEXIST

5044


DEVICE_LIMIT_AUTH

5045


SIGN_SVRKEY_NOTEXIST

5046


SVRPUBKEY_NOTEXIST

5047


FILETYPE_NOTEXIST

5048


SUBPUB_SUBJ_NOT_EXIST

8000


SUBPUB_ID_TYPE_NOT_SUPPORT

8001


NOTICE_QUEUE_WRITE_ERR

8002

NOTICE服务写入队列失败

NOTICE_PROTO_NOT_SUPPORT

8003

NOTICE通知协议不支持

LANGUAGE_NOT_EXIST

8004

语言不存在

SUBPUB_PUBLISH_MSG_ERR

8005

订阅发布服务Publish失败

NOTICE_JUMP_NOTIE_SUPPORT

8006

NOTICE跨机房调用不支持

SIGNAL_NOT_SUPPORT

9001

所发送的指令,对方不支持该指令集;(版本/型号错误导致)

SERVICE_TIMEOUT

9002

指令发送后,超过超时时间仍没有回应

SIGNAL_ALREADY_CACHE

9003

通过服务端转发信令,设备支持信令缓存,设备在线,则回应

SIGNAL_DISCARD

9004

通过服务端转发信令,不支持信令缓存,设备不在线,则回应

CMD_NOT_SUPPORT

9010

版本较旧,或设备类型不符合不支持当前指令

DEVICE_REG_FORBIDDEN

9030

设备注册无权限,或服务限制,设备不再重试

DEVICE_LOGIN_FORBIDDEN

9031

设备登陆被禁用,设备不再重试

QR_CREATE_FAIL

10000

生成二维码失败

CANT_SHARE_SELF

10001

无法分享自己

DEVICE_NOT_REMOVE

10002

注销账号时未删除所有设备

TIME_OUT

99999

请求超时


8. 更新日志


本文提供 Android 版汇云 App SDK 的变更日志和发布说明。SDK 会持续更新,并且汇云对每个版本 SDK 均保留使用权利(© 2017 - 2021 HuiYun Inc. All Rights Reserved)。



请加我的企业微信
鹤梦信息客服