public class EZGlobalSDK
extends java.lang.Object
限定符和类型 | 方法和说明 |
---|---|
boolean |
addDevice(java.lang.String deviceSerial,
java.lang.String verifyCode)
添加设备
接口中有网络操作,需要在线程中调用
|
java.lang.String |
captureCamera(java.lang.String deviceSerial,
int channelNo)
获取摄像头实时图片的url接口,需要设备支持,萤石设备一般都能支持此协议。
|
void |
clearStreamInfoCache()
清除取流时的缓存数据
|
boolean |
controlPTZ(java.lang.String deviceSerial,
int cameraNo,
EZConstants.EZPTZCommand command,
EZConstants.EZPTZAction action,
int speed)
PTZ 控制接口
接口中有网络操作,需要在线程中调用
|
EZPlayer |
createPlayer(java.lang.String deviceSerial,
int cameraNo)
根据deviceSerial 和 cameraNo 构造EZPlayer对象
|
EZPlayer |
createPlayerWithUrl(java.lang.String url)
根据视频广场url构造EZPlayer对象,用于视频广场的视频播放
|
EZPlayer |
createPlayerWithUserId(int userId,
int cameraNo,
int streamType)
创建局域网播放器
|
byte[] |
decryptData(byte[] inputData,
java.lang.String verifyCode)
解密数据,该接口可以用于解密告警图片
|
boolean |
deleteAlarm(java.util.List<java.lang.String> alarmIdList)
批量删除告警
|
boolean |
deleteDevice(java.lang.String deviceSerial)
删除当前账号的设备
接口中有网络操作,需要在线程中调用
|
boolean |
deleteLeaveMessages(java.util.List<java.lang.String> msgIdList)
批量删除留言消息
该接口为耗时操作,建议放在线程中调用
|
static void |
enableP2P(boolean bEnable)
设置是否支持P2P取流,默认是不支持的
P2P取流可以降低转发取流的比例,但是在多人同时观看时对设备端的带宽要求也更高,设备端带宽不够的情况下,影响播放体验
对于可能多人同时观看的场景,建议不支持
对于家用监控类的场景,建议支持P2P
此函数可以在任意时刻调用
|
static void |
finiLib()
释放sdk资源
|
boolean |
formatStorage(java.lang.String deviceSerial,
int partitionIndex)
格式化分区(SD卡)
接口中有网络操作,需要在线程中调用
|
java.util.List<EZAlarmInfo> |
getAlarmList(java.lang.String deviceSerial,
int pageIndex,
int pageSize,
java.util.Calendar beginTime,
java.util.Calendar endTime)
获取告警信息列表
接口中有网络操作,需要在线程中调用
|
java.util.List<EZAreaInfo> |
getAreaList()
获取区域列表
接口中有网络操作,需要在线程中调用
|
java.util.List<EZHiddnsDeviceInfo> |
getDDNSDeviceList(int pageSize,
int pageStart)
获取账户下所有设备列表DDNS信息
该接口为耗时操作,建议放在线程中调用
|
EZHiddnsDeviceInfo |
getDDNSWithDeviceSerial(java.lang.String deviceSerial,
java.lang.String domain)
获取设备DDNS信息
该接口为耗时操作,建议放在线程中调用
设备序列号,deviceSerial和domain不能全为空,
如果deviceSerial和domain都不为空,优先查询deviceSerial设备的ddns信息
|
EZDeviceInfo |
getDeviceInfo(java.lang.String deviceSerial)
获取单个设备信息
该接口为耗时操作,建议放在线程中调用
|
java.util.List<EZDeviceInfo> |
getDeviceList(int pageIndex,
int pageSize)
获取用户的设备列表,返回EZDeviceInfo的对象数组,只提供设备基础数据
该接口为耗时操作,建议放在线程中调用
|
EZDeviceUpgradeStatus |
getDeviceUpgradeStatus(java.lang.String deviceSerial)
获取设备升级状态
接口中有网络操作,需要在线程中调用
|
EZDeviceVersion |
getDeviceVersion(java.lang.String deviceSerial)
获取设备的版本信息接口
接口中有网络操作,需要在线程中调用
|
EZAccessToken |
getEZAccessToken()
获取登录token
|
static EZGlobalSDK |
getInstance() |
void |
getLeaveMessageData(Handler handler,
EZLeaveMessage msg,
EZOpenSDKListener.EZLeaveMessageFlowCallback callback)
获取语音留言数据
该接口为耗时操作,建议放在线程中调用
|
java.util.List<EZLeaveMessage> |
getLeaveMessageList(java.lang.String deviceSerial,
int pageIndex,
int pageSize,
java.util.Calendar beginTime,
java.util.Calendar endTime)
获取留言消息列表,默认为止查询语音留言信息
该接口为耗时操作,建议放在线程中调用
|
java.util.List<EZDeviceInfo> |
getSharedDeviceList(int pageIndex,
int pageSize)
获取好友分享的设备列表,返回EZDeviceInfo的对象数组
该接口为耗时操作,建议放在线程中调用
|
java.util.List<EZHiddnsDeviceInfo> |
getShareDDNSDeviceList(int pageSize,
int pageStart)
获取当前账号下的所有的其它账户分享给自己的设备DDNS信息
该接口为耗时操作,建议放在线程中调用
|
java.util.List<EZStorageStatus> |
getStorageStatus(java.lang.String deviceSerial)
获取存储介质状态(如是否初始化,格式化进度等)
接口中有网络操作,需要在线程中调用
|
java.lang.String |
getTerminalId()
获取终端(手机等)唯一识别码
|
int |
getUnreadMessageCount(java.lang.String deviceSerial,
EZConstants.EZMessageType messageType)
获取未读消息数
接口中有网络操作,需要在线程中调用
|
EZUserInfo |
getUserInfo()
获取用户信息;用户信息包含:用户名,头像地址等
接口中有网络操作,需要在线程中调用
|
static java.lang.String |
getVersion() |
static boolean |
initLib(Application application,
java.lang.String appKey)
SDK 初始化
|
boolean |
isLogin()
是否已登录授权
|
void |
logout()
登出账号
|
void |
openChangePasswordPage()
打开修改密码页面
|
void |
openCloudPage(java.lang.String deviceSerial,
int cameraNo)
打开云存储H5页面
|
void |
openLoginPage(int areaId)
打开授权登录中间页面,用于获取Accesstoken
|
void |
openLoginPage(int areaId,
int flag)
打开授权登录中间页面,用于获取Accesstoken
|
EZProbeDeviceInfoResult |
probeDeviceInfo(java.lang.String deviceSerial,
java.lang.String deviceType)
尝试查询设备信息(用于添加设备之前, 简单查询设备信息,如是否在线,是否添加等)
接口中有网络操作,需要在线程中调用
|
void |
releasePlayer(EZPlayer player)
释放 EZPlayer 对象
|
java.util.List<EZCloudRecordFile> |
searchRecordFileFromCloud(java.lang.String deviceSerial,
int cameraNo,
java.util.Calendar startTime,
java.util.Calendar endTime)
查询云存储录像信息列表
该接口中有网络操作,需要在线程中调用
|
java.util.List<EZDeviceRecordFile> |
searchRecordFileFromDevice(java.lang.String deviceSerial,
int cameraNo,
java.util.Calendar startTime,
java.util.Calendar endTime)
查询远程SD卡存储录像信息列表
当设备关联了NVR存储设备后,此时查找的是NVR设备中录像,不再提供查找设备SD卡中录像
接口中有网络操作,需要在线程中调用
|
void |
setAccessToken(java.lang.String accessToken)
授权登录以后给EZOpenSDK设置AccessToken
|
boolean |
setAlarmStatus(java.util.List<java.lang.String> alarmIdList,
EZConstants.EZAlarmStatus alarmStatus)
设置告警为已读
接口中有网络操作,需要在线程中调用
|
void |
setDDNSAutomatic(java.lang.String deviceSerial)
设置设备DDNS自动映射
该接口为耗时操作,建议放在线程中调用
|
void |
setDDNSManual(java.lang.String deviceSerial,
int cmdPort,
int httpPort)
设置设备DDNS手动映射
该接口为耗时操作,建议放在线程中调用
|
boolean |
setDefence(java.lang.String deviceSerial,
EZConstants.EZDefenceStatus defence)
设备设置布防状态,兼容A1和IPC设备的布防
接口中有网络操作,需要在线程中调用
|
void |
setDeviceDoamin(java.lang.String deviceSerial,
java.lang.String domain)
设置设备DDNS域名
该接口为耗时操作,建议放在线程中调用
设备序列号,deviceSerial和domain不能为空,
|
boolean |
setDeviceEncryptStatus(java.lang.String deviceSerial,
java.lang.String validateCode,
boolean encrypt)
设备视频图片加解密开关接口
接口中有网络操作,需要在线程中调用
|
boolean |
setDeviceName(java.lang.String deviceSerial,
java.lang.String deviceName)
修改设备名称接口
接口中有网络操作,需要在线程中调用
|
boolean |
setLeaveMessageStatus(java.util.List<java.lang.String> msgIdList,
EZConstants.EZMessageStatus messageStatus)
批量设置留言消息已读功能
该接口为耗时操作,建议放在线程中调用
|
boolean |
setVideoLevel(java.lang.String deviceSerial,
int cameraNo,
int videoLevel)
设置指定监控点视频清晰度
接口中有网络操作,需要在线程中调用
|
void |
setVparamForLoginPage(java.lang.String vParam)
设置登录页的v参数,用于控制登录页样式
|
void |
ShareDDNSDeviceList(java.lang.String deviceSerial,
java.lang.String account)
分享设备DDNS信息,把单个设备的DDNS信息分享给其他账户
该接口为耗时操作,建议放在线程中调用
|
static void |
showSDKLog(boolean showLog)
设置是否打印sdk中logcat日志
建议在debug下设置打印,release下设置不打印
|
void |
startAPConfigWifiWithSsid(java.lang.String ssid,
java.lang.String password,
java.lang.String deviceSerial,
java.lang.String verifyCode,
APWifiConfig.APConfigCallback apConfigCallback)
AP配网接口,默认为"EZVIZ_"+设备序列号,设备AP热点密码默认为"EZVIZ_"+设备验证码,默认自动连接设备热点,需要获取可扫描wifi的权限
|
void |
startAPConfigWifiWithSsid(java.lang.String ssid,
java.lang.String password,
java.lang.String deviceSerial,
java.lang.String verifyCode,
java.lang.String routerNamePre,
java.lang.String routerPasswordPre,
boolean isAutoConnectDeviceHotSpot,
APWifiConfig.APConfigCallback apConfigCallback)
AP配网接口
|
boolean |
startConfigWifi(Context context,
java.lang.String ssid,
java.lang.String password,
DeviceDiscoveryListener l)
已过时。
|
void |
startConfigWifi(Context context,
java.lang.String deviceSerial,
java.lang.String ssid,
java.lang.String password,
EZOpenSDKListener.EZStartConfigWifiCallback back)
开始WiFi配置
|
void |
startConfigWifi(Context context,
java.lang.String deviceSerial,
java.lang.String ssid,
java.lang.String password,
int mode,
EZOpenSDKListener.EZStartConfigWifiCallback back)
开始WiFi配置
|
void |
stopAPConfigWifiWithSsid()
停止AP配网
|
boolean |
stopConfigWiFi()
停止Wifi配置
|
void |
upgradeDevice(java.lang.String deviceSerial)
开始升级设备
接口中有网络操作,需要在线程中调用
|
public static EZGlobalSDK getInstance()
public static boolean initLib(Application application, java.lang.String appKey)
application
- 客戶端app的 Application 對象appKey
- 客戶端app申請的app keypublic void openCloudPage(java.lang.String deviceSerial, int cameraNo) throws BaseException
deviceSerial
- 设备序列号cameraNo
- camera序号,EZCameraInfo.cameraNoBaseException
- 调用失败的异常信息public static void finiLib()
public static java.lang.String getVersion()
public static void showSDKLog(boolean showLog)
showLog
- true打印 false不打印public static void enableP2P(boolean bEnable)
bEnable
- true-支持p2p false-不支持p2ppublic void setAccessToken(java.lang.String accessToken)
accessToken
- 授权登录获取的accessTokenpublic EZAccessToken getEZAccessToken()
public java.util.List<EZAreaInfo> getAreaList() throws BaseException
BaseException
EZAreaInfo
public void openLoginPage(int areaId)
areaId
- 区域IDpublic void openLoginPage(int areaId, int flag)
areaId
- 区域IDflag
- 页面跳转flag 类似Intent.FLAG_ACTIVITY_CLEAR_TOPpublic void logout()
public java.util.List<EZDeviceInfo> getDeviceList(int pageIndex, int pageSize) throws BaseException
pageIndex
- 查询页index,从0开始pageSize
- 每页数量(建议20以内)BaseException
public EZProbeDeviceInfoResult probeDeviceInfo(java.lang.String deviceSerial, java.lang.String deviceType)
deviceSerial
- 需要查询的设备序列号public java.util.List<EZAlarmInfo> getAlarmList(java.lang.String deviceSerial, int pageIndex, int pageSize, java.util.Calendar beginTime, java.util.Calendar endTime) throws BaseException
deviceSerial
- 设备序列号,为null时查询整个账户下的告警信息列表pageIndex
- 分页当前页码(从0开始)pageSize
- 分页每页数量(建议20以内)beginTime
- 搜索时间范围开始时间,开始时间和结束时间可以同时为空endTime
- 搜索时间范围结束时间BaseException
public boolean setAlarmStatus(java.util.List<java.lang.String> alarmIdList, EZConstants.EZAlarmStatus alarmStatus) throws BaseException
alarmIdList
- 告警信息Id数组(设置单条告警为已读时,数组中可以只有一个Id)alarmStatus
- 告警状态,目前只支持设为已读功能 EZMessageStatusReadBaseException
public boolean deleteAlarm(java.util.List<java.lang.String> alarmIdList) throws BaseException
alarmIdList
- 告警ID listBaseException
public java.util.List<EZCloudRecordFile> searchRecordFileFromCloud(java.lang.String deviceSerial, int cameraNo, java.util.Calendar startTime, java.util.Calendar endTime) throws BaseException
deviceSerial
- 设备序列号cameraNo
- camera的序号,EZCameraInfo.cameraNostartTime
- 查询时间范围开始时间endTime
- 查询时间范围结束时间BaseException
public java.util.List<EZDeviceRecordFile> searchRecordFileFromDevice(java.lang.String deviceSerial, int cameraNo, java.util.Calendar startTime, java.util.Calendar endTime) throws BaseException
deviceSerial
- 设备序列号cameraNo
- camera的序号,EZCameraInfo.cameraNostartTime
- 查询时间范围开始时间endTime
- 查询时间范围结束时间BaseException
public boolean addDevice(java.lang.String deviceSerial, java.lang.String verifyCode) throws BaseException
deviceSerial
- 设备序列号verifyCode
- 设备验证码,验证码位于设备机身上,6位大写字母BaseException
public boolean deleteDevice(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号, 9位数字BaseException
public boolean controlPTZ(java.lang.String deviceSerial, int cameraNo, EZConstants.EZPTZCommand command, EZConstants.EZPTZAction action, int speed) throws BaseException
deviceSerial
- 设备序列号cameraNo
- 通道号command
- ptz控制命令action
- 控制启动/停止speed
- 速度(0-7)BaseException
public byte[] decryptData(byte[] inputData, java.lang.String verifyCode)
inputData
- 解密前数据verifyCode
- 密码,通常为设备验证码public boolean setDefence(java.lang.String deviceSerial, EZConstants.EZDefenceStatus defence) throws BaseException
deviceSerial
- 设备序列号defence
- 布防状态, 摄像机布防状态只有0和1,告警器有0:睡眠 8:在家 16:外出BaseException
public java.lang.String captureCamera(java.lang.String deviceSerial, int channelNo) throws BaseException
deviceSerial
- 设备序列号channelNo
- 通道号BaseException
public EZDeviceVersion getDeviceVersion(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号BaseException
public boolean setDeviceEncryptStatus(java.lang.String deviceSerial, java.lang.String validateCode, boolean encrypt) throws BaseException
deviceSerial
- 设备序列号validateCode
- 设备验证码,开启加密无需验证码encrypt
- 是否加密BaseException
public boolean setDeviceName(java.lang.String deviceSerial, java.lang.String deviceName) throws BaseException
deviceSerial
- 设备序列号deviceName
- 修改后的设备名称BaseException
public EZUserInfo getUserInfo() throws BaseException
BaseException
public int getUnreadMessageCount(java.lang.String deviceSerial, EZConstants.EZMessageType messageType) throws BaseException
deviceSerial
- 需要获取的设备序列号,为空时返回账户下所有设备的未读消息数messageType
- 消息类型:EZMessageTypeAlarm 告警消息,EZMessageTypeLeave 留言消息, 暂不支持BaseException
public java.util.List<EZLeaveMessage> getLeaveMessageList(java.lang.String deviceSerial, int pageIndex, int pageSize, java.util.Calendar beginTime, java.util.Calendar endTime) throws BaseException
deviceSerial
- 设备序列号(可为空),为空时返回账户下所有设备的留言消息pageIndex
- 当前分页,从0开始pageSize
- 分页大小beginTime
- 开始时间endTime
- 结束时间BaseException
public boolean setLeaveMessageStatus(java.util.List<java.lang.String> msgIdList, EZConstants.EZMessageStatus messageStatus) throws BaseException
msgIdList
- 留言消息Id数组(最大数量为10,允许只有1个)messageStatus
- 需要设置的留言状态,目前只支持 EZMessageStatusRead(已读);BaseException
public boolean deleteLeaveMessages(java.util.List<java.lang.String> msgIdList) throws BaseException
msgIdList
- 留言消息Id数组(最大数量为10,允许只有1个)BaseException
public void getLeaveMessageData(Handler handler, EZLeaveMessage msg, EZOpenSDKListener.EZLeaveMessageFlowCallback callback)
handler
- handler,用于发送成功或者失败消息, 301:下载留言失败 ;302:下载留言成功 消息obj为留言IDmsg
- 留言消息callback
- 获取留言消息数据回调public java.util.List<EZStorageStatus> getStorageStatus(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 需要获取的设备序列号BaseException
public boolean formatStorage(java.lang.String deviceSerial, int partitionIndex) throws BaseException
deviceSerial
- 需要格式化的设备序列号partitionIndex
- getStorageStatus查询返回的分区号BaseException
public void upgradeDevice(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号BaseException
public EZDeviceUpgradeStatus getDeviceUpgradeStatus(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号BaseException
public void openChangePasswordPage()
public void startConfigWifi(Context context, java.lang.String deviceSerial, java.lang.String ssid, java.lang.String password, EZOpenSDKListener.EZStartConfigWifiCallback back)
context
- 应用 activity contextdeviceSerial
- 配置设备序列号ssid
- 连接WiFi SSIDpassword
- 连接 WiFi 密码back
- 配置回调public void startConfigWifi(Context context, java.lang.String deviceSerial, java.lang.String ssid, java.lang.String password, int mode, EZOpenSDKListener.EZStartConfigWifiCallback back)
context
- 应用 activity contextdeviceSerial
- 配置设备序列号ssid
- 连接WiFi SSIDpassword
- 连接 WiFi 密码mode
- 配网的方式,EZWiFiConfigMode中列举的模式进行任意组合,例如:EZWiFiConfigMode.EZWiFiConfigSmart|EZWiFiConfigMode.EZWiFiConfigWaveback
- 配置回调public boolean startConfigWifi(Context context, java.lang.String ssid, java.lang.String password, DeviceDiscoveryListener l)
context
- 应用 activity contextssid
- 连接WiFi SSIDpassword
- 连接WiFi 密码l
- 回调,用于处理连接设备的WiFi配置状态public boolean stopConfigWiFi()
public void startAPConfigWifiWithSsid(java.lang.String ssid, java.lang.String password, java.lang.String deviceSerial, java.lang.String verifyCode, APWifiConfig.APConfigCallback apConfigCallback)
ssid
- WiFi的ssidpassword
- WiFi的密码deviceSerial
- 设备序列号verifyCode
- 设备验证码apConfigCallback
- 结果回调public void startAPConfigWifiWithSsid(java.lang.String ssid, java.lang.String password, java.lang.String deviceSerial, java.lang.String verifyCode, java.lang.String routerNamePre, java.lang.String routerPasswordPre, boolean isAutoConnectDeviceHotSpot, APWifiConfig.APConfigCallback apConfigCallback)
ssid
- WiFi的ssidpassword
- WiFi的密码deviceSerial
- 设备序列号verifyCode
- 设备验证码routerNamePre
- 设备热点名称,可传空,默认为"EZVIZ_"+设备序列号routerPasswordPre
- 设备热点密码,可传空,默认为"EZVIZ_"+设备验证码isAutoConnectDeviceHotSpot
- 是否自动连接设备热点,需要获取可扫描wifi的权限apConfigCallback
- 结果回调public void stopAPConfigWifiWithSsid()
public EZPlayer createPlayerWithUrl(java.lang.String url)
url
- 广场视频urlpublic EZPlayer createPlayerWithUserId(int userId, int cameraNo, int streamType)
userId
- 设备登录成功后的userIdcameraNo
- 设备预览的通道号streamType
- 设备预览的码流类型 1:主码流;2:子码流public EZPlayer createPlayer(java.lang.String deviceSerial, int cameraNo)
deviceSerial
- cameraNo
- public void releasePlayer(EZPlayer player)
player
- 将要释放的EZPlayer对象public java.util.List<EZDeviceInfo> getSharedDeviceList(int pageIndex, int pageSize) throws BaseException
pageIndex
- 分页起始页,从0开始pageSize
- 分页每页数量(建议20以内)BaseException
public boolean setVideoLevel(java.lang.String deviceSerial, int cameraNo, int videoLevel) throws BaseException
deviceSerial
- 设备序列号cameraNo
- 设备通道号,默认为1videoLevel
- 清晰度 0-流畅 1-均衡 2-高品质BaseException
public EZDeviceInfo getDeviceInfo(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号BaseException
public java.lang.String getTerminalId()
public void clearStreamInfoCache()
public EZHiddnsDeviceInfo getDDNSWithDeviceSerial(java.lang.String deviceSerial, java.lang.String domain) throws BaseException
deviceSerial
- 设备序列号domain
- 设备域名BaseException
public void setDeviceDoamin(java.lang.String deviceSerial, java.lang.String domain) throws BaseException
deviceSerial
- 设备序列号domain
- 设备域名,设备域名规则修改,不能为空,6-32位,可以为本身序列号,包含小写字母、数字、-,首位必须字母,末位不能为-BaseException
public void setDDNSAutomatic(java.lang.String deviceSerial) throws BaseException
deviceSerial
- 设备序列号BaseException
public void setDDNSManual(java.lang.String deviceSerial, int cmdPort, int httpPort) throws BaseException
deviceSerial
- 设备序列号cmdPort
- cmd(服务)端口httpPort
- http端口BaseException
public java.util.List<EZHiddnsDeviceInfo> getDDNSDeviceList(int pageSize, int pageStart) throws BaseException
pageSize
- 分页大小,默认为10,最大为50pageStart
- 分页起始页,从0开始,默认为0BaseException
public void ShareDDNSDeviceList(java.lang.String deviceSerial, java.lang.String account) throws BaseException
deviceSerial
- 设备序列号account
- 被分享账户,可以是邮箱地址或手机号码(包含国家代码)或不是全数字的用户名BaseException
public java.util.List<EZHiddnsDeviceInfo> getShareDDNSDeviceList(int pageSize, int pageStart) throws BaseException
pageSize
- 分页大小,默认为10,最大为50pageStart
- 分页起始页,从0开始,默认为0BaseException
public boolean isLogin()
public void setVparamForLoginPage(java.lang.String vParam)
vParam
- 登录页样式(mobile-移动版、wap-pc版。。。)