public abstract class IYWContactService
extends java.lang.Object
| Constructor and Description |
|---|
IYWContactService() |
| Modifier and Type | Method and Description |
|---|---|
abstract void |
addBlackContact(java.lang.String userId,
java.lang.String appKey,
IWxCallback result)
添加到黑名单
|
abstract void |
asynchronousSyncContactsToCacheAndDB(java.util.List<IYWDBContact> contacts,
IWxCallback result)
(建议开发者使用自己的DB和Cache来做联系人的持久化和缓存,此接口用于Demo示例)
异步地将联系人同步到云旺的Cache和DB
|
static void |
enableBlackList()
开启黑名单功能,如果需要使用黑名单功能,请务必调用该方法,否则黑名单功能无效
|
abstract void |
fetchUserProfile(java.util.List<java.lang.String> uids,
java.lang.String appkey,
IWxCallback callback)
获取带域profile信息
|
abstract void |
fetchUserProfiles(java.util.List<java.lang.String> uids,
IWxCallback callback)
获取当前域用户的profile信息
|
abstract IYWContactHeadClickCallback |
getContactHeadClickCallback()
获得头像点击的回调
|
abstract IYWContactProfileCallback |
getContactProfileCallback()
获取当前设置的profile信息回调
|
abstract IYWContact |
getContactProfileInfo(java.lang.String userId,
java.lang.String appkey)
获取用户昵称和头像信息,如果用户通过setContactProfileCallback或者setCrossContactProfileCallback
方法设置了callback,此方法会直接调用用户设置的回调。如果没有设置,则SDK会向服务器做请求处理
|
abstract java.util.List<IYWDBContact> |
getContactsFromCache()
(建议开发者使用自己的DB和Cache来做联系人的持久化和缓存,此接口用于Demo中的联系人示例程序)
从cache获取联系人(由于不同账号的DB不同,因此无需担心串号问题)
|
abstract IYWCrossContactProfileCallback |
getCrossContactProfileCallback()
获取当前设置的跨域消息互通profile信息回调
|
abstract int |
getMsgRecFlagForContact(IYWContact contact)
获取针对某一联系人contact的消息接收配置
|
abstract int |
getMsgRecFlagForContact(java.lang.String userId,
java.lang.String appKey)
获取针对某一联系人contact的消息接收配置,适用于调用时无法获取联系人
IYWContact对象 |
abstract void |
getMsgRecFlagForContactFromServer(java.lang.String userId,
java.lang.String appKey,
int timeout,
IWxCallback callback)
获取针对某一联系人contact的消息接收配置,适用于调用时无法获取联系人
IYWContact对象 |
abstract IYWContact |
getWXIMContact(java.lang.String targetId)
获取聊天对象的信息
|
abstract IYWContact |
getWXIMContact(java.lang.String appKey,
java.lang.String targetId)
获取聊天对象的信息
|
abstract boolean |
isBlackContact(java.lang.String userId,
java.lang.String appKey)
该用户是否在黑名单中
|
static boolean |
isBlackListEnable()
黑名单功能是否已开启
|
abstract void |
notifyContactProfileUpdate()
通知个人Profile有更新,如果开发者是异步获取个人信息,获取成功后,请调用此方法,
让SDK及时刷新用户信息(昵称,头像)
|
abstract void |
registerContactsListener(IContactListListener contactCallback)
(建议开发者使用自己的DB和Cache来做联系人的持久化和缓存,此接口用于Demo中的联系人示例程序)
注册联系人变动监听
|
abstract void |
removeBlackContact(java.lang.String userId,
java.lang.String appKey,
IWxCallback result)
移出黑名单
|
abstract void |
setContactHeadClickCallback(IYWContactHeadClickCallback contactHeadClickCallback)
设置头像点击的回调事件
|
abstract void |
setContactMsgRecType(IYWContact contact,
int msgRecType,
int timeout,
IWxCallback callback)
设置联系人消息接收类型
|
abstract void |
setContactProfileCallback(IYWContactProfileCallback mContactProfileCallback)
设置当前的profile信息回调
|
abstract void |
setCrossContactProfileCallback(IYWCrossContactProfileCallback crossContactProfileCallback)
设置当前的跨域消息互通pprofile信息回调
|
abstract void |
syncBlackContacts(IWxCallback result)
获取黑名单列表
|
abstract void |
syncContactsOnlineStatus(java.util.List<IYWContact> contacts,
IWxCallback result)
请求联系人在线状态
|
abstract void |
unRegisterContactsListener(IContactListListener contactCallback)
(建议开发者使用自己的DB和Cache来做联系人的持久化和缓存,此接口用于Demo中的联系人示例程序)
取消联系人变动监听
|
abstract void |
updateProfileInfo(java.lang.String appkey,
YWProfileInfo profileInfo)
更新个人信息
|
public static void enableBlackList()
public static boolean isBlackListEnable()
public abstract void fetchUserProfiles(java.util.List<java.lang.String> uids,
IWxCallback callback)
uids - uid列表, 去前缀的短idcallback - 获取数据的回调,如果成功,返回Listpublic abstract void fetchUserProfile(java.util.List<java.lang.String> uids,
java.lang.String appkey,
IWxCallback callback)
appkey - 应用appkeyuids - uid列表, 去前缀的短idcallback - 获取数据的回调,如果成功,返回Listpublic abstract void syncBlackContacts(IWxCallback result)
result - onSuccess(Object... obj){ Listpublic abstract void addBlackContact(java.lang.String userId,
java.lang.String appKey,
IWxCallback result)
userId - appKey - result - public abstract void removeBlackContact(java.lang.String userId,
java.lang.String appKey,
IWxCallback result)
userId - 去前缀的短useridappKey - 应用appkeyresult - onSuccess(Object... result) {IYWContact iywContact = (IYWContact) result[0]} 方式获得移出黑名单的用户public abstract boolean isBlackContact(java.lang.String userId,
java.lang.String appKey)
userId - 去前缀的短useridappKey - 应用appkeypublic abstract void syncContactsOnlineStatus(java.util.List<IYWContact> contacts, IWxCallback result)
contacts - 必须设置userid和appkeyresult - 注意:回调运行在主线程,即UI线程
onSuccess(Object... result) {Mappublic abstract IYWContactHeadClickCallback getContactHeadClickCallback()
public abstract void setContactHeadClickCallback(IYWContactHeadClickCallback contactHeadClickCallback)
contactHeadClickCallback - public abstract IYWContactProfileCallback getContactProfileCallback()
public abstract void setContactProfileCallback(IYWContactProfileCallback mContactProfileCallback)
mContactProfileCallback - public abstract IYWCrossContactProfileCallback getCrossContactProfileCallback()
public abstract void setCrossContactProfileCallback(IYWCrossContactProfileCallback crossContactProfileCallback)
crossContactProfileCallback - public abstract void asynchronousSyncContactsToCacheAndDB(java.util.List<IYWDBContact> contacts,
IWxCallback result)
contacts - 实现了IYWDBContact的实例public abstract java.util.List<IYWDBContact> getContactsFromCache()
public abstract void registerContactsListener(IContactListListener contactCallback)
contactCallback - public abstract void unRegisterContactsListener(IContactListListener contactCallback)
contactCallback - public abstract void notifyContactProfileUpdate()
public abstract IYWContact getWXIMContact(java.lang.String targetId)
targetId - 聊天对象idpublic abstract IYWContact getWXIMContact(java.lang.String appKey, java.lang.String targetId)
appKey - 聊天对象APPEKYtargetId - 聊天对象idpublic abstract void updateProfileInfo(java.lang.String appkey,
YWProfileInfo profileInfo)
appkey - profileInfo - public abstract IYWContact getContactProfileInfo(java.lang.String userId, java.lang.String appkey)
userId - appkey - public abstract int getMsgRecFlagForContact(IYWContact contact)
contact - 当前登录用户的联系人YWProfileSettingsConstants#RECEIVE_PEER_MSG:正常接收消息
YWProfileSettingsConstants#RECEIVE_PEER_MSG_NOT_REMIND:接收消息不提醒
setContactMsgRecType(IYWContact, int, int, IWxCallback)public abstract int getMsgRecFlagForContact(java.lang.String userId,
java.lang.String appKey)
IYWContact对象userId - 联系人IdappKey - 联系人的appKeyYWProfileSettingsConstants#RECEIVE_PEER_MSG:正常接收消息
YWProfileSettingsConstants#RECEIVE_PEER_MSG_NOT_REMIND:接收消息不提醒
setContactMsgRecType(IYWContact, int, int, IWxCallback)public abstract void getMsgRecFlagForContactFromServer(java.lang.String userId,
java.lang.String appKey,
int timeout,
IWxCallback callback)
IYWContact对象userId - 联系人IdappKey - 联系人的appKeytimeout - 超时时长callback - 操作结果回调,成功则回调IWxCallback#onSuccess(Object...),其参数为ArrayList<YWPeerSettingsModel>格式的可变参数,开发者可以使用(ArrayList<YWPeerSettingsModel>)result[0]获取结果
否则回调IWxCallback#onError(int, String)
注:设置请参考setContactMsgRecType(IYWContact, int, int, IWxCallback)public abstract void setContactMsgRecType(IYWContact contact, int msgRecType, int timeout, IWxCallback callback)
contact - 代表要设置的联系人对象msgRecType - 消息接收类型
YWProfileSettingsConstants#RECEIVE_PEER_MSG:正常接收消息
YWProfileSettingsConstants#RECEIVE_PEER_MSG_NOT_REMIND:接收消息不提醒
timeout - 超时时长callback - 操作结果回调,成功则回调IWxCallback#onSuccess(Object...),
否则回调IWxCallback#onError(int, String)
asynchronousSyncContactsToCacheAndDB(List, IWxCallback))