hyphenate_SDK4.0 4.8.0
hyphenate java IM SDK
| Public 成员函数 | 所有成员列表
com.hyphenate.chat.EMPushManager类 参考

enum  DisplayStyle
 
enum  EMPushAction
 
enum  EMPushRemindType
 

Public 成员函数

void enableOfflinePush () throws HyphenateException
 
void disableOfflinePush (int start, int end) throws HyphenateException
 
EMPushConfigs getPushConfigs ()
 
EMPushConfigs getPushConfigsFromServer () throws HyphenateException
 
void updatePushServiceForGroup (List< String > groupIds, boolean noPush) throws HyphenateException
 
void updatePushServiceForUsers (List< String > userIds, boolean noPush) throws HyphenateException
 
List< String > getNoPushGroups ()
 
List< String > getNoPushUsers ()
 
boolean updatePushNickname (String nickname) throws IllegalArgumentException, HyphenateException
 
void asyncUpdatePushNickname (String nickname, EMCallBack callback)
 
void updatePushDisplayStyle (DisplayStyle style) throws IllegalArgumentException, HyphenateException
 
void asyncUpdatePushDisplayStyle (DisplayStyle style, EMCallBack callback)
 
void setSilentModeForConversation (String conversationId, EMConversation.EMConversationType type, EMSilentModeParam param, EMValueCallBack< EMSilentModeResult > callBack)
 
void clearRemindTypeForConversation (String conversationId, EMConversation.EMConversationType type, EMCallBack callBack)
 
void getSilentModeForConversation (String conversationId, EMConversation.EMConversationType type, EMValueCallBack< EMSilentModeResult > callBack)
 
void setSilentModeForAll (EMSilentModeParam param, EMValueCallBack< EMSilentModeResult > callBack)
 
void getSilentModeForAll (EMValueCallBack< EMSilentModeResult > callBack)
 
void getSilentModeForConversations (List< EMConversation > conversationList, EMValueCallBack< Map< String, EMSilentModeResult > > callBack)
 
void syncSilentModeConversationsFromServer (EMCallBack callBack)
 
void setPreferredNotificationLanguage (String languageCode, EMCallBack callBack)
 
void getPreferredNotificationLanguage (EMValueCallBack< String > callBack)
 
void bindDeviceToken (String notifierName, String deviceToken, EMCallBack callBack)
 
void setPushTemplate (String templateName, EMCallBack callBack)
 
void getPushTemplate (EMValueCallBack< String > callBack)
 
void reportPushAction (JSONObject json, EMPushAction action, EMCallBack callBack)
 

详细描述

离线消息推送管理类,针对 GCM、小米、华为等离线推送以及 APNS。

成员函数说明

◆ asyncUpdatePushDisplayStyle()

void com.hyphenate.chat.EMPushManager.asyncUpdatePushDisplayStyle ( DisplayStyle  style,
EMCallBack  callback 
)

更新推送消息样式,默认是 DisplayStyle#SimpleBanner

异步方法。

参考: 同步方法见 updatePushDisplayStyle(DisplayStyle)

参数
style推送消息样式。

◆ asyncUpdatePushNickname()

void com.hyphenate.chat.EMPushManager.asyncUpdatePushNickname ( String  nickname,
EMCallBack  callback 
)

更新当前用户的推送昵称。

异步方法。

离线消息推送的时候可以显示推送昵称而不是用户 ID。 当用户更改昵称(可通过 EMUserInfoManager#updateOwnInfo(EMUserInfo, EMValueCallBack) 或者 EMUserInfoManager#updateOwnInfoByAttribute(EMUserInfo.EMUserInfoType, String, EMValueCallBack) 修改)时,

务必也调用此方法更新到环信服务器,防止显示差异。

 同步方法见 {@link #updatePushNickname(String)}。
参数
nickname推送昵称,需要与用户属性中的昵称区分开。

◆ bindDeviceToken()

void com.hyphenate.chat.EMPushManager.bindDeviceToken ( String  notifierName,
String  deviceToken,
EMCallBack  callBack 
)

绑定设备 token 到服务器。 当 deviceToken 为空时,表示从服务器解绑当前设备的 deviceToken。

参数
notifierName表示当前设备的ID,具体如下: FCM - Sender ID; 华为 - App ID; 小米 - App ID; 魅族 - App ID; OPPO - App Key; Vivo - App ID + "#" + App Key;
deviceToken当前设备返回的设备 Token .
callBack

◆ clearRemindTypeForConversation()

void com.hyphenate.chat.EMPushManager.clearRemindTypeForConversation ( String  conversationId,
EMConversation.EMConversationType  type,
EMCallBack  callBack 
)

清除会话的离线推送提醒类型设置。 清除之后会话跟随当前登录用户的设置 EMPushManager#setSilentModeForAll(EMSilentModeParam, EMValueCallBack)

参数
conversationId会话 ID。
type会话类型。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ disableOfflinePush()

void com.hyphenate.chat.EMPushManager.disableOfflinePush ( int  start,
int  end 
) throws HyphenateException

在指定的时间段(24 小时制)内,不推送离线消息。

同步方法,会阻塞当前线程。

参数
start开始时间。
end结束时间。
异常
HyphenateException如果有异常会在这里抛出,包含异常原因。
弃用:
使用 EMPushManager#setSilentModeForAll(EMSilentModeParam, EMValueCallBack) 替代。

◆ enableOfflinePush()

void com.hyphenate.chat.EMPushManager.enableOfflinePush ( ) throws HyphenateException

开启离线消息推送。

同步方法,会阻塞当前线程。

异常
HyphenateException
弃用:
使用 EMPushManager#setSilentModeForAll(EMSilentModeParam, EMValueCallBack) 替代。

◆ getNoPushGroups()

List< String > com.hyphenate.chat.EMPushManager.getNoPushGroups ( )

获取关闭了离线消息推送的群组。

同步方法,会阻塞当前线程。

返回
群组列表。
弃用:
使用 EMPushManager#getSilentModeForConversation(String, EMConversation.EMConversationType, EMValueCallBack) 替代,获取每个会话的免打扰设置来判断。

◆ getNoPushUsers()

List< String > com.hyphenate.chat.EMPushManager.getNoPushUsers ( )

从缓存中获取关闭了离线消息推送的用户。

注意: 如果需要获取最新的数据可先调用 EMPushManager#getPushConfigsFromServer() 后,再调用本方法。

返回
关闭了离线消息推送的用户列表。
弃用:
使用 EMPushManager#getSilentModeForConversation(String, EMConversation.EMConversationType, EMValueCallBack) 替代,获取每个会话的免打扰设置来判断。

◆ getPreferredNotificationLanguage()

void com.hyphenate.chat.EMPushManager.getPreferredNotificationLanguage ( EMValueCallBack< String >  callBack)

获取用户设置的推送翻译语言。

参数
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getPushConfigs()

EMPushConfigs com.hyphenate.chat.EMPushManager.getPushConfigs ( )

从缓存获取推送配置信息。

返回
推送配置信息。

◆ getPushConfigsFromServer()

EMPushConfigs com.hyphenate.chat.EMPushManager.getPushConfigsFromServer ( ) throws HyphenateException

从服务器获取推送配置信息。

同步方法,会阻塞当前线程。

返回
推送配置信息。
异常
HyphenateException如果有异常会在这里抛出,包含异常原因。

◆ getPushTemplate()

void com.hyphenate.chat.EMPushManager.getPushTemplate ( EMValueCallBack< String >  callBack)

获取设置的离线推送模板。

参数
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getSilentModeForAll()

void com.hyphenate.chat.EMPushManager.getSilentModeForAll ( EMValueCallBack< EMSilentModeResult callBack)

获取当前登录用户的免打扰设置。

参数
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getSilentModeForConversation()

void com.hyphenate.chat.EMPushManager.getSilentModeForConversation ( String  conversationId,
EMConversation.EMConversationType  type,
EMValueCallBack< EMSilentModeResult callBack 
)

获取会话的免打扰设置。

参数
conversationId会话 ID。
type会话类型。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ getSilentModeForConversations()

void com.hyphenate.chat.EMPushManager.getSilentModeForConversations ( List< EMConversation conversationList,
EMValueCallBack< Map< String, EMSilentModeResult > >  callBack 
)

批量获取指定会话的免打扰设置。

参数
conversationList会话列表。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ reportPushAction()

void com.hyphenate.chat.EMPushManager.reportPushAction ( JSONObject  json,
EMPushAction  action,
EMCallBack  callBack 
)

上报推送事件。

异步方法。

参数
json推送数据里携带的 EPush 字段对应的 value。
action推送事件。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ setPreferredNotificationLanguage()

void com.hyphenate.chat.EMPushManager.setPreferredNotificationLanguage ( String  languageCode,
EMCallBack  callBack 
)

设置用户推送翻译语言。

参数
languageCode语言 code。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ setPushTemplate()

void com.hyphenate.chat.EMPushManager.setPushTemplate ( String  templateName,
EMCallBack  callBack 
)

设置离线推送的推送模板。

参数
templateName模板名称。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ setSilentModeForAll()

void com.hyphenate.chat.EMPushManager.setSilentModeForAll ( EMSilentModeParam  param,
EMValueCallBack< EMSilentModeResult callBack 
)

设置当前登录用户的免打扰设置。

参数
param离线推送免打扰参数。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ setSilentModeForConversation()

void com.hyphenate.chat.EMPushManager.setSilentModeForConversation ( String  conversationId,
EMConversation.EMConversationType  type,
EMSilentModeParam  param,
EMValueCallBack< EMSilentModeResult callBack 
)

设置会话的免打扰。

参数
conversationId会话 ID。
type会话类型。
param离线推送免打扰参数。
callBack该方法完成调用的回调。如果该方法调用失败,会包含调用失败的原因。

◆ syncSilentModeConversationsFromServer()

void com.hyphenate.chat.EMPushManager.syncSilentModeConversationsFromServer ( EMCallBack  callBack)

和服务端同步会话免打扰状态,异步方法

参数
callBack处理结果回调,失败会返回失败原因。详见 EMCallBack

◆ updatePushDisplayStyle()

void com.hyphenate.chat.EMPushManager.updatePushDisplayStyle ( DisplayStyle  style) throws IllegalArgumentException, HyphenateException

更新推送消息样式,默认是 DisplayStyle#SimpleBanner

参考: 异步方法见 asyncUpdatePushDisplayStyle(DisplayStyle, EMCallBack)

同步方法,会阻塞当前线程。

参数
style推送消息样式。

◆ updatePushNickname()

boolean com.hyphenate.chat.EMPushManager.updatePushNickname ( String  nickname) throws IllegalArgumentException, HyphenateException

更新当前用户的推送昵称。 离线消息推送的时候可以显示推送昵称而不是用户 ID。 当用户更改昵称(可通过 EMUserInfoManager#updateOwnInfo(EMUserInfo, EMValueCallBack) 或者 EMUserInfoManager#updateOwnInfoByAttribute(EMUserInfo.EMUserInfoType, String, EMValueCallBack) 修改)时, 务必也调用此方法更新到 Chat 服务器,防止显示差异。

参考: 异步方法见 asyncUpdatePushNickname(String, EMCallBack)

同步方法,会阻塞当前线程。

参数
nickname推送昵称,需要与用户属性中的昵称区分开。

◆ updatePushServiceForGroup()

void com.hyphenate.chat.EMPushManager.updatePushServiceForGroup ( List< String >  groupIds,
boolean  noPush 
) throws HyphenateException

设置指定的群组是否接受离线消息推送。

同步方法,会阻塞当前线程。

参数
groupIds要设置的群组列表。
noPush- true:不接收离线消息推送;
  • false:接收推送。
异常
HyphenateException如果有异常会在这里抛出,包含异常原因。
弃用:
使用 EMPushManager#setSilentModeForConversation(String, EMConversation.EMConversationType, EMSilentModeParam, EMValueCallBack) 替代,设置每个会话的免打扰设置。

◆ updatePushServiceForUsers()

void com.hyphenate.chat.EMPushManager.updatePushServiceForUsers ( List< String >  userIds,
boolean  noPush 
) throws HyphenateException

设置指定的用户是否接收离线消息推送。

参数
userIds要设置的用户列表。
noPush- true:不接收离线消息推送;
  • false:接收推送。
异常
HyphenateException如果有异常会在这里抛出,包含异常原因。
弃用:
使用 EMPushManager#setSilentModeForConversation(String, EMConversation.EMConversationType, EMSilentModeParam, EMValueCallBack) 替代,设置每个会话的免打扰设置。

该类的文档由以下文件生成: