更新时间:2024-10-22 06:51:18下载pdf
设备分享是指设备的管理者将设备分享给其他人,其他人接受分享后即可使用设备。
主要包括以下功能:
设备分享 SDK 的接口通过 ThingDeviceShareManager
类和 IDeviceShareManager
类提供。下文将详细说明每个接口所需的参数。
接口说明
接口 | 说明 |
---|---|
isSupportDeviceShare | 判断设备/群组是否支持分享 |
addTimer | 添加设备/群组定时 |
editTimer | 更新设备/群组定时 |
deleteTimer | 删除设备/群组定时 |
updateTimerStatus | 更新定时状态 |
获取 manager 示例
IDeviceShareManager mShareManager = DeviceBusinessDataManager.getInstance().getDeviceShareManager();
ThingDeviceShareManager manager = new ThingDeviceShareManager()
接口说明
fun isSupportDeviceShare(String resId, int resType, IThingResultCallback<Boolean> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | String | 设备 ID/群组 ID |
resType | int | 类型
|
callback | IThingResultCallback<Boolean> |
成功回调
|
调用示例
manager.isSupportDeviceShare(resId, resType, new IThingResultCallback<Boolean>() {
@Override
public void onSuccess(Boolean result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun querySharedCount(resId: String, shareType: int, listener: Business.ResultListener<Long>)
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | string | 设备 ID/群组 ID |
resType | int | 类型
|
listener | Business.ResultListener<Long> |
回调,成功则返回剩余次数 |
调用示例
IDeviceShareManager mShareManager = DeviceBusinessDataManager.getInstance().getDeviceShareManager();
mShareManager.querySharedCount(resId, shareType, new ResultListener<Long>() {
@Override
public void onFailure(BusinessResponse bizResponse, Long bizResult, String apiName) {
}
@Override
public void onSuccess(BusinessResponse bizResponse, Long bizResult, String apiName) {
}
});
接口说明
fun shareToUser(String resId, int resType,Long spaceId,String userAccount,IThingResultCallback<SharedUserInfoBean> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | String | 设备 ID/群组 ID |
resType | int | 类型
|
userAccount | String | 被分享者的账号 |
spaceId | Long | 设备所在的家庭 ID |
callback | IThingResultCallback<SharedUserInfoBean> |
回调,返回分享结果 |
调用示例
manager.shareToUser(resId, resType, spaceId, userAccount, new IThingResultCallback<SharedUserInfoBean>() {
@Override
public void onSuccess(SharedUserInfoBean result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
SharedUserInfoBean
数据结构
public class SharedUserInfoBean {
private long memeberId;
private String remarkName;
private String userName;
private String iconUrl;
private String mobile;
private long homeId;
private String headPic;
private String userAccount;
}
接口说明
fun getReceivers(String resId, int resType, int page, int pageSize, IThingResultCallback<List<ShareMember>> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | String | 设备 ID/群组 ID |
resType | int | 类型
|
page | int | 页码 |
pageSize | int | 分页大小 |
callback | IThingResultCallback<List<ShareMember>> |
回调,成功则返回 ShareMember 列表 |
ShareMember
数据结构
public class ShareMember {
private Long memberId;
private String nickName;
private String userName;
private String iconUrl;
private int shareMode;
private Long endTime;
private String uid;
}
调用示例
ThingDeviceShareManager manager = new ThingDeviceShareManager();
manager.getReceivers(resId,resType, page, pageSize, new IThingResultCallback<List<ShareMember>> {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
接口说明
fun removeReceiver(Long memberId, String resId, int resType, IResultCallback callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
memberId | Long | 用户 ID |
resId | String | 设备 ID/群组 ID |
resType | int | 类型
|
callback | IResultCallback | 回调 |
调用示例
ThingDeviceShareManager manager = new ThingDeviceShareManager();
manager.removeReceiver(memberId,resId,resType, new IResultCallback() {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
接口说明
fun updateSharedDeadline(relationId: Long, resId: String, shareType: Int, shareMode:Int, shareEndTime: Long, listener: Business.ResultListener<Boolean>)
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | String | 设备 ID/群组 ID |
resType | int | 类型
|
memberId | Long | 成员 ID |
mode | int | 模式
|
endTime | Long | 结束时间戳,单位毫秒 |
callback | ResultListener<Boolean> |
回调 |
调用示例
IDeviceShareManager mShareManager = DeviceBusinessDataManager.getInstance().getDeviceShareManager();
mShareManager.updateSharedDeadline(memberId, resId, resType, mode, endTime, new ResultListener<Boolean>() {
@Override
public void onFailure(BusinessResponse bizResponse, Boolean bizResult, String apiName) {
}
@Override
public void onSuccess(BusinessResponse bizResponse, Boolean bizResult, String apiName) {
}
});
接口说明
fun getRelationMembers(IThingResultCallback<List<ShareMember>> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
callback | IThingResultCallback<List<ShareMember>> |
回调,成功则返回 List<ShareMember> |
调用示例
ThingDeviceShareManager manager = new ThingDeviceShareManager();
manager.getRelationMembers(new IThingResultCallback<List<ShareMember>>() {
@Override
public void onSuccess(List<ShareMember> result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun deleteSharedContact(hideUserId: String, listener: Business.ResultListener<kotlin.Boolean>)
参数说明
参数 | 类型 | 说明 |
---|---|---|
uid | String | 用户 ID |
callback | ResultListener<Boolean>() |
回调 |
调用示例
mShareManager.deleteSharedContact(uid, new ResultListener<Boolean>() {
@Override
public void onFailure(BusinessResponse bizResponse, Boolean bizResult, String apiName) {
}
@Override
public void onSuccess(BusinessResponse bizResponse, Boolean bizResult, String apiName) {
}
});
接口说明
fun createShareLink(resId: String, shareType: Int, groupId: Long, shareSource: Int, shareCount: Int, listener: Business.ResultListener<ShareDeviceLinkResultBean>)
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | string | 设备 ID/群组 ID |
resType | int | 类型
|
spaceId | longlong | 设备所在的家庭 ID |
shareType | int | 分享类型
|
shareCount | int | 分享次数 |
callback | ResultListener<ShareDeviceLinkResultBean> |
回调,成功返回分享信息 |
调用示例
mShareManager.createShareLink(resId, resType, spaceId, shareType, shareCount, new ResultListener<ShareDeviceLinkResultBean>() {
@Override
public void onFailure(BusinessResponse businessResponse, ShareDeviceLinkResultBean shareDeviceLinkBean, String s) {
if (callback != null) {
}
}
@Override
public void onSuccess(BusinessResponse businessResponse, ShareDeviceLinkResultBean shareDeviceLinkBean, String s) {
if (callback != null) {
}
}
});
接口说明
fun parseShortLinkAvailability(String code,IThingResultCallback<Boolean> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
code | string | 短链 Code |
callback | IThingResultCallback<Boolean> |
成功回调
|
调用示例
private ThingDeviceShareManager manager = new ThingDeviceShareManager();
manager.parseShortLinkAvailability(code, new IThingResultCallback<Boolean>() {
@Override
public void onSuccess(Boolean result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun parseSharedDeviceLinkResult(shortCode: String, listener: Business.ResultListener<ShareShortLinkResult>):
参数说明
参数 | 类型 | 说明 |
---|---|---|
code | string | 短链 Code |
Callback | ResultListener<ShareShortLinkResult> |
回调,成功则返回 ShareShortLinkResult 模型 |
调用示例
mShareManager.parseSharedDeviceLinkResult(shortCode, new ResultListener<ShareShortLinkResult>() {
@Override
public void onFailure(BusinessResponse bizResponse, ShareShortLinkResult bizResult, String apiName) {
}
@Override
public void onSuccess(BusinessResponse bizResponse, ShareShortLinkResult bizResult, String apiName) {
}
});
接口说明
fun acceptShare(String code,IResultCallback callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
code | string | 短链 Code |
callback | IResultCallback() | 回调 |
调用示例
manager.acceptShare(code, new IResultCallback() {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
接口说明
fun getSharerName(String resId, int resType,IThingResultCallback<String> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | string | 设备 ID/群组 ID |
resType | int | 类型
|
callback | IThingResultCallback<String> |
回调,成功则返回分享者名称 |
name
,则优先返回 name
。name
不存在,则返回 mobile
。mobile
也不存在,则返回 email
。请注意,mobile
和 email
均已进行脱敏处理。
调用示例
manager.getSharerName(resId, resType, new IThingResultCallback<String>() {
@Override
public void onSuccess(String result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun removeReceivedShare(String resId, int resType,IResultCallback callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
resId | string | 设备 ID/群组 ID |
resType | int | 类型
|
callback | IResultCallback() | 回调 |
调用示例
manager.removeReceivedShare(resId, resType, new IResultCallback() {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
接口说明
fun getShareReceivedUserList(IThingResultCallback<List<SharedUserInfoBean>> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
callback | IThingResultCallback<List<SharedUserInfoBean>> |
回调,成功返回 SharedUserInfoBean 列表 |
SharedUserInfoBean
数据结构
public class SharedUserInfoBean {
private long memeberId;
private String remarkName;
private String userName;
private String iconUrl;
private String mobile;
private long homeId;
private String headPic;
private String userAccount;
}
调用示例
manager.getShareReceivedUserList(new IThingResultCallback<List<SharedUserInfoBean>>() {
@Override
public void onSuccess(List<SharedUserInfoBean> result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun getSharerInfoDetail(Long memberId,IThingResultCallback<ShareReceivedUserDetailBean> callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
memberId | long | 成员 ID |
callback | IThingResultCallback<ShareReceivedUserDetailBean> |
回调,成功返回 ShareReceivedUserDetailBean 模型 |
ShareReceivedUserDetailBean
数据结构
public class ShareReceivedUserDetailBean {
private String mobile;
private List<DeviceShareBean> devices;
private String remarkName;
private String nameWithoutRemark;
}
调用示例
manager.getSharerInfoDetail(memberId, new IThingResultCallback<ShareReceivedUserDetailBean>() {
@Override
public void onSuccess(ShareReceivedUserDetailBean result) {
}
@Override
public void onError(String errorCode, String errorMessage) {
}
});
接口说明
fun removeReceivedUserShare(Long memberId,IResultCallback callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
memberId | long | 成员 ID |
callback | IResultCallback() | 回调 |
调用示例
manager.removeReceivedUserShare(memberId, new IResultCallback() {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
接口说明
fun renameReceivedShareNickname(Long memberId,String name,IResultCallback callback);
参数说明
参数 | 类型 | 说明 |
---|---|---|
memberId | long | 成员 ID |
name | String | 新的昵称 |
callback | IResultCallback() | 回调 |
调用示例
manager.renameReceivedShareNickname(memberId, name, new IResultCallback() {
@Override
public void onError(String code, String error) {
}
@Override
public void onSuccess() {
}
});
该内容对您有帮助吗?
是意见反馈该内容对您有帮助吗?
是意见反馈