public class JMessageClient
extends java.lang.Object
限定符和类型 | 字段和说明 |
---|---|
static int |
FLAG_NOTIFY_DEFAULT
展示通知栏通知,所有设置均默认打开。
|
static int |
FLAG_NOTIFY_DISABLE
不展示通知栏通知
|
static int |
FLAG_NOTIFY_SILENCE
展示通知栏通知,其他设置均为关闭。
|
static int |
FLAG_NOTIFY_WITH_LED
收到通知时,点亮呼吸灯
|
static int |
FLAG_NOTIFY_WITH_SOUND
收到通知时,发出声音
|
static int |
FLAG_NOTIFY_WITH_VIBRATE
收到通知时,产生震动
|
static int |
NOTI_MODE_DEFAULT
已过时。
deprecated in 2.2.0,use
setNotificationFlag(int)
instead. |
static int |
NOTI_MODE_NO_NOTIFICATION
已过时。
deprecated in 2.2.0,use
setNotificationFlag(int)
instead. |
static int |
NOTI_MODE_NO_SOUND
已过时。
deprecated in 2.2.0,use
setNotificationFlag(int)
instead. |
static int |
NOTI_MODE_NO_VIBRATE
已过时。
deprecated in 2.2.0,use
setNotificationFlag(int)
instead. |
static int |
NOTI_MODE_SILENCE
已过时。
deprecated in 2.2.0,use
setNotificationFlag(int)
instead. |
构造器和说明 |
---|
JMessageClient()
|
限定符和类型 | 方法和说明 |
---|---|
static void |
addGroupMembers(long groupID,
java.util.List<java.lang.String> userNameList,
BasicCallback callback)
向群组中添加成员。
|
static void |
addGroupMembers(long groupID,
java.lang.String appKey,
java.util.List<java.lang.String> userNameList,
BasicCallback callback)
向群组中添加成员,通过指定appKey可以实现跨应用添加其他appKey下用户进群组
|
static void |
addGroupMembers(long groupID,
java.lang.String appKey,
java.util.List<java.lang.String> userNameList,
java.lang.String reason,
BasicCallback callback)
向群组中添加成员,通过指定appKey可以实现跨应用添加其他appKey下用户进群组,公开群
createPublicGroup(String, String, CreateGroupCallback)
可以指定邀请入群的理由,群主和管理员审批入群GroupApprovalEvent 时可以看到理由
|
static void |
addUsersToBlacklist(java.util.List<java.lang.String> usernames,
BasicCallback callback)
将用户加入黑名单,对方用户将无法给你发消息。
|
static void |
addUsersToBlacklist(java.util.List<java.lang.String> usernames,
java.lang.String appKey,
BasicCallback callback)
将用户添加进黑名单,对方将无法给你发消息。
|
static void |
adminDissolveGroup(long groupID,
BasicCallback callback)
解散指定的群组,只有群的群主有权限解散。
|
static void |
applyJoinGroup(long groupID,
java.lang.String reason,
BasicCallback callback)
申请加入群组,只有公开群组(公开群组定义参考
createPublicGroup(String, String, CreateGroupCallback) ),
才能发送入群申请 |
static Message
|
createAtGroupMembersMessage(long groupID,
java.util.List<UserInfo> atList,
MessageContent content)
创建一条@群组中user的消息,此方法是创建@群成员message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法;
如果想要关注会话实例或需要自定义fromName的开发者请通过
Conversation.createSendMessage(MessageContent, List, String)
接口来创建消息. |
static void |
createGroup(java.lang.String groupName,
java.lang.String groupDesc,
CreateGroupCallback callback)
创建群组,群组创建成功后,创建者会默认包含在群成员中。
|
static void |
createGroup(java.lang.String groupName,
java.lang.String groupDesc,
java.io.File groupAvatarFile,
java.lang.String format,
CreateGroupCallback callback)
创建群组,群组创建成功后,创建者会默认包含在群成员中。
|
static void |
createGroup(java.lang.String groupName,
java.lang.String groupDesc,
int maxMemberCount,
java.io.File groupAvatarFile,
java.lang.String format,
CreateGroupCallback callback)
创建群组,指定群成员上限(大于2),群组创建成功后,创建者会默认包含在群成员中。
|
static Message
|
createGroupCustomMessage(long groupID,
java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
创建一条群聊自定义消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupFileMessage(long groupID,
java.io.File file,
java.lang.String fileName)
创建一条群聊file消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupImageMessage(long groupID,
java.io.File imageFile)
创建一条群聊图片信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupLocationMessage(long groupId,
double latitude,
double longitude,
int scale,
java.lang.String address)
创建一条群聊地理位置消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupTextMessage(long groupID,
java.lang.String text)
创建一条群聊文本信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupVideoMessage(long groupID,
android.graphics.Bitmap thumbImage,
java.lang.String thumbFormat,
java.io.File videoFile,
java.lang.String videoFileName,
int duration)
创建一条群聊video消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createGroupVoiceMessage(long groupID,
java.io.File voiceFile,
int duration)
创建一条群聊语音信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static void |
createPublicGroup(java.lang.String groupName,
java.lang.String groupDesc,
CreateGroupCallback callback)
创建公开群组, 群组创建成功后,创建者会默认包含在群成员中。
|
static void |
createPublicGroup(java.lang.String groupName,
java.lang.String groupDesc,
java.io.File groupAvatarFile,
java.lang.String format,
CreateGroupCallback callback)
创建公开群组,群组创建成功后,创建者会默认包含在群成员中。
|
static void |
createPublicGroup(java.lang.String groupName,
java.lang.String groupDesc,
int maxMemberCount,
java.io.File groupAvatarFile,
java.lang.String format,
CreateGroupCallback callback)
创建公开群组,指定群成员上限(大于2),群组创建成功后,创建者会默认包含在群成员中。
|
static Message
|
createSingleCustomMessage(java.lang.String username,
java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
创建一条单聊自定义消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleCustomMessage(java.lang.String username,
java.lang.String appKey,
java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
创建一条单聊自定义消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleFileMessage(java.lang.String userName,
java.lang.String appKey,
java.io.File file,
java.lang.String fileName)
创建一条单聊file消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleImageMessage(java.lang.String username,
java.io.File imageFile)
创建一条单聊图片信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleImageMessage(java.lang.String username,
java.lang.String appKey,
java.io.File imageFile)
创建一条单聊图片信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleLocationMessage(java.lang.String username,
java.lang.String appKey,
double latitude,
double longitude,
int scale,
java.lang.String address)
创建一条单聊地理位置消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleTextMessage(java.lang.String username,
java.lang.String text)
创建一条单聊文本消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleTextMessage(java.lang.String username,
java.lang.String appKey,
java.lang.String text)
创建一条单聊文本消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleVideoMessage(java.lang.String userName,
java.lang.String appKey,
android.graphics.Bitmap thumbImage,
java.lang.String thumbFormat,
java.io.File videoFile,
java.lang.String videoFileName,
int duration)
创建一条单聊video消息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleVoiceMessage(java.lang.String username,
java.io.File voiceFile,
int duration)
创建一条单聊语音信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static Message
|
createSingleVoiceMessage(java.lang.String username,
java.lang.String appKey,
java.io.File voiceFile,
int duration)
创建一条单聊语音信息,此方法是创建message的快捷接口,对于不需要关注会话实例的开发者可以使用此方法
快捷的创建一条消息。
|
static boolean |
deleteChatRoomConversation(long roomID)
删除聊天室会话,同时删除掉本地相关缓存文件
|
static boolean |
deleteGroupConversation(long groupID)
删除群聊的会话,同时删除掉本地聊天记录
|
static boolean |
deleteSingleConversation(java.lang.String userName)
删除单聊的会话,同时删除掉本地聊天记录。
|
static boolean |
deleteSingleConversation(java.lang.String username,
java.lang.String appkey)
删除与指定appkey下username的单聊的会话,同时删除掉本地聊天记录。
|
static void |
delUsersFromBlacklist(java.util.List<java.lang.String> usernames,
BasicCallback callback)
将用户移出黑名单。
|
static void |
delUsersFromBlacklist(java.util.List<java.lang.String> usernames,
java.lang.String appKey,
BasicCallback callback)
将用户移出黑名单,通过指定appKey可以实现跨应用将用户移出黑名单
|
static void |
enterGroupConversation(long groupID)
UI层在进入聊天会话界面时调用,设置当前正在聊天的对象,调用此接口之后,收到对应群组中发来的消息时,sdk不会弹出通知栏提示。
|
static void |
enterSingleConversaion(java.lang.String username)
已过时。
deprecated in 1.2.0
use
enterSingleConversation(String, String)
instead. |
static void |
enterSingleConversation(java.lang.String username)
UI层在进入聊天会话界面时调用,设置当前正在聊天的对象,调用此接口之后,收到对应username发来的消息时,sdk不会弹出通知栏提示。
|
static void |
enterSingleConversation(java.lang.String username,
java.lang.String appkey)
UI层在进入聊天会话界面时调用,设置当前正在聊天的对象,调用此接口之后,收到对应username发来的消息时,sdk不会弹出通知栏提示。
|
static void |
exitConversaion()
已过时。
deprecated in 1.2.0. use
exitConversation()
instead. |
static void |
exitConversation()
UI层在退出聊天会话界面时调用,清除当前正在聊天的对象,之后收到对应的用户或群组发来的消息时,会正常展示通知栏通知。
|
static void |
exitGroup(long groupId,
BasicCallback callback)
退出群组,如果是群主退群,则相关群主权利移交给下一位群成员。
|
static void |
forwardMessage(Message message,
Conversation conv,
MessageSendingOptions options,
BasicCallback callback)
已过时。
deprecated since
jmessage 2.6.0 use
forwardMessage(Message, Conversation, MessageSendingOptions, RequestCallback)
instead. |
static void |
forwardMessage(Message message,
Conversation conv,
MessageSendingOptions options,
RequestCallback<Message> callback)
转发消息,注意支持转发的消息
Message.isSupportForward() 才可转发,符合转发要求后会创建新的消息发送,
创建的消息会在回调中返回(无论发送是否成功),如果不符合转发要求则不会创建新消息 message返回null。 |
static int |
getAllUnReadMsgCount()
获取未读消息总数
|
static void |
getBlacklist(GetBlacklistCallback callback)
获取被当前用户加入黑名单的用户列表
|
static void |
getBlockedGroupsList(GetGroupInfoListCallback callback)
获取当前用户设置的屏蔽群组列表
|
static Conversation
|
getChatRoomConversation(long roomID)
获取聊天室会话信息
|
static java.util.List<Conversation>
|
getChatRoomConversationList()
从本地数据库中获取包含所有的聊天室会话的列表
|
static java.util.List<Conversation>
|
getConversationList()
从本地数据库中获取会话列表,默认按照会话的最后一条消息的时间,降序排列
注意此接口返回的结果中不包含聊天室会话,如果需要获取聊天室会话,请使用
getChatRoomConversationList()
或者getChatRoomConversation(long) 接口获取。
|
static java.util.List<Conversation>
|
getConversationListByDefault()
从本地数据库中获取会话列表,默认不排序。
|
static Conversation
|
getGroupConversation(long groupID)
获取群组会话信息
|
static void |
getGroupIDList(GetGroupIDListCallback callback)
从服务器获取当前用户所加入的群组的groupID的list
|
static void |
getGroupInfo(long groupID,
GetGroupInfoCallback callback)
获取指定群的基本信息,本地没有会从服务器获取
|
static void |
getGroupMembers(long groupID,
GetGroupMembersCallback callback)
已过时。
deprecated in 2.7.0,
use
getGroupMembers(long, RequestCallback)
instead |
static void |
getGroupMembers(long groupID,
RequestCallback<java.util.List<GroupMemberInfo>> callback)
从本地获取群成员groupMemberInfo list,如果本地不存在则从服务器获取。
|
static UserInfo
|
getMyInfo()
获取当前的用户信息
|
static void |
getNoDisturbGlobal(IntegerCallback callback)
获取全局免打扰标识,回调结果中,1表示已设置,其他表示未设置。
|
static void |
getNoDisturblist(GetNoDisurbListCallback callback)
获取当前用户设置的免打扰名单列表
|
static int |
getNotificationFlag()
获取当前通知栏的展示类型。
|
static void |
getPublicGroupListByApp(java.lang.String appKey,
int start,
int count,
RequestCallback<java.util.List<GroupBasicInfo>> callback)
获取指定应用appKey所属下公开群组基本信息, 如果appKey为空则默认使用本应用appKey.
|
static java.lang.String |
getSdkVersionString()
获取sdk版本号
|
static Conversation
|
getSingleConversation(java.lang.String username)
获取单聊会话信息,默认获取本appkey下username的单聊会话。
|
static Conversation
|
getSingleConversation(java.lang.String username,
java.lang.String appkey)
获取与指定appkey下username的单聊会话信息,如果appkey为空则默认取本应用appkey下对应username的会话。
|
static void |
getUserInfo(java.lang.String username,
GetUserInfoCallback callback)
获取用户信息。
|
static void |
getUserInfo(java.lang.String username,
java.lang.String appkey,
GetUserInfoCallback callback)
获取用户信息,此接口可用来获取不同appkey下用户的信息,如果appkey为空,则默认获取当前appkey下的用户信息。
|
static boolean |
init(android.content.Context context)
SDK初始化,默认不启用消息记录漫游。
|
static boolean |
init(android.content.Context context,
boolean msgRoaming)
SDK初始化,同时指定是否启用消息记录漫游,如果启用,sdk将会把当前登陆用户的消息历史记录同步到本地。
|
static boolean |
isCurrentUserPasswordValid(java.lang.String password)
判断输入的字符串是否与当前用户的密码匹配
|
static void |
login(java.lang.String userName,
java.lang.String password,
BasicCallback callback)
用户登录
|
static void |
login(java.lang.String userName,
java.lang.String password,
RequestCallback<java.util.List<DeviceInfo>> callback)
用户登陆,并且在回调中获取用户账号所登陆过的设备信息
DeviceInfo 每个端:移动端(Android 、iOS),PC端,Web端(JS、微信小程序)只保存最近一次设备登陆记录。 |
static void |
logout()
用户登出接口,调用后用户将无法收到消息。
|
static void |
register(java.lang.String userName,
java.lang.String password,
BasicCallback callback)
用户注册
|
static void |
register(java.lang.String userName,
java.lang.String password,
RegisterOptionalUserInfo optionalUserInfo,
BasicCallback callback)
用户注册
|
static void |
registerEventReceiver(java.lang.Object receiver)
注册事件接收者,具体用法参考官方文档事件处理
一节
|
static void |
registerEventReceiver(java.lang.Object receiver,
int priority)
注册事件接收者,具体用法参考官方文档事件处理
一节
|
static void |
removeGroupMembers(long groupID,
java.util.List<java.lang.String> userNameList,
BasicCallback callback)
踢出群组成员。
|
static void |
removeGroupMembers(long groupID,
java.lang.String appKey,
java.util.List<java.lang.String> userNameList,
BasicCallback callback)
踢出群组中成员,通过指定appKey可以实现跨应用踢出群组成员
|
static void |
sendCrossDeviceTransCommand(PlatformType platformType,
java.lang.String msg,
BasicCallback callback)
发送透传消息给当前用户在其他平台已登录的设备。
|
static void |
sendGroupTransCommand(long gid,
java.lang.String msg,
BasicCallback callback)
发送消息透传给群。
|
static void |
sendMessage(Message message)
发送消息,使用默认发送配置参数.
|
static void |
sendMessage(Message message,
MessageSendingOptions options)
发送消息.并且可以使用
MessageSendingOptions 对发送的一些发送参数做配置,
注意这些配置仅对本次消息发送生效。 |
static void |
sendSingleTransCommand(java.lang.String username,
java.lang.String appKey,
java.lang.String msg,
BasicCallback callback)
发送消息透传给个人。
|
static void |
setDebugMode(boolean isDebugMode)
设置debug模式,sdk将会输出更多debug信息。
|
static void |
setNoDisturbGlobal(int noDisturbGlobal,
BasicCallback callback)
设置全局免打扰标识,设置之后用户在所有设备上收到消息时通知栏都不会弹出消息通知。
|
static void |
setNotificationFlag(int flag)
设置通知的展示类型,默认所有设置都会打开
|
static void |
setNotificationMode(int mode)
已过时。
deprecated in 2.2.0 use
setNotificationFlag(int)
instead |
static void |
unRegisterEventReceiver(java.lang.Object receiver)
解绑事件接收者,解绑后接收者将不再接收到事件
|
static void |
updateGroupDescription(long groupID,
java.lang.String groupDesc,
BasicCallback callback)
已过时。
deprecated in 2.3.0,use
GroupInfo.updateDescription(String, BasicCallback)
instead |
static void |
updateGroupName(long groupID,
java.lang.String groupName,
BasicCallback callback)
已过时。
deprecated in 2.3.0,use
GroupInfo.updateName(String, BasicCallback)
instead |
static void |
updateMyInfo(UserInfo.Field updateField,
UserInfo userInfo,
BasicCallback callback)
更新当前登录的用户的用户信息
|
static void |
updateUserAvatar(java.io.File avatar,
BasicCallback callback)
更新用户头像,建议用户在上传头像前先对头像先进行压缩,否则在调用
UserInfo.getBigAvatarBitmap(GetAvatarBitmapCallback)
接口拿头像的原图时,有可能会抛出OOM异常。 |
static void |
updateUserAvatar(java.io.File avatar,
java.lang.String format,
BasicCallback callback)
更新用户头像,建议用户在上传头像前先对头像先进行压缩,否则在调用
UserInfo.getBigAvatarBitmap(GetAvatarBitmapCallback)
接口拿头像的原图时,有可能会抛出OOM异常。 |
static void |
updateUserPassword(java.lang.String oldPassword,
java.lang.String newPassword,
BasicCallback callback)
更新密码
|
public static final int NOTI_MODE_NO_NOTIFICATION
setNotificationFlag(int)
instead.public static final int NOTI_MODE_DEFAULT
setNotificationFlag(int)
instead.public static final int NOTI_MODE_NO_SOUND
setNotificationFlag(int)
instead.public static final int NOTI_MODE_NO_VIBRATE
setNotificationFlag(int)
instead.public static final int NOTI_MODE_SILENCE
setNotificationFlag(int)
instead.public static final int FLAG_NOTIFY_DEFAULT
此为通知栏的默认行为
public static final int FLAG_NOTIFY_SILENCE
public static final int FLAG_NOTIFY_DISABLE
public static final int FLAG_NOTIFY_WITH_SOUND
public static final int FLAG_NOTIFY_WITH_VIBRATE
public static final int FLAG_NOTIFY_WITH_LED
public static boolean init(android.content.Context context)
在调用IM其他接口前必须先调此接口初始化SDK,推荐在application类中调用。
context
- 应用程序上下文对象public static boolean init(android.content.Context context, boolean msgRoaming)
在调用IM其他接口前必须先调此接口初始化SDK,推荐在application类中调用。
context
- 应用程序上下文对象msgRoaming
- 是否需要消息记录漫游。 true-需要,false-不需要public static void setDebugMode(boolean isDebugMode)
isDebugMode
- true-打开debug模式, false-关闭debug模式。public static void register(java.lang.String userName, java.lang.String password, BasicCallback callback)
userName
- 开发者注册的用户标识,应该唯一。password
- 用户登录密码,推荐将字符串加密。callback
- 回调接口public static void register(java.lang.String userName, java.lang.String password, RegisterOptionalUserInfo optionalUserInfo, BasicCallback callback)
userName
- 开发者注册的用户标识,应该唯一。password
- 用户登录密码,推荐将字符串加密。optionalUserInfo
- 注册时的用户其他信息callback
- 回调接口public static void login(java.lang.String userName, java.lang.String password, BasicCallback callback)
userName
- 开发者注册的用户名,应该唯一。password
- 用户登录密码,推荐将字符串加密。callback
- 回调接口public static void login(java.lang.String userName, java.lang.String password, RequestCallback<java.util.List<DeviceInfo>> callback)
DeviceInfo
userName
- 开发者注册的用户名,应该唯一。password
- 用户登录密码,推荐将字符串加密。callback
- 回调接口public static void getUserInfo(java.lang.String username, GetUserInfoCallback callback)
username
- 开发者注册的用户名。callback
- 回调接口public static void getUserInfo(java.lang.String username, java.lang.String appkey, GetUserInfoCallback callback)
username
- 开发者注册的用户名appkey
- 指定的appkeycallback
- 回调接口public static void logout()
public static boolean isCurrentUserPasswordValid(java.lang.String password)
password
- 被匹配的字符串public static void updateUserPassword(java.lang.String oldPassword, java.lang.String newPassword, BasicCallback callback)
oldPassword
- 当前用户原密码newPassword
- 当前用户新密码callback
- 回调接口public static void updateMyInfo(UserInfo.Field updateField, UserInfo userInfo, BasicCallback callback)
updateField
- 需要更新的字段名userInfo
- 当前用户的UserInfo对象callback
- 回调对象public static void updateUserAvatar(java.io.File avatar, BasicCallback callback)
UserInfo.getBigAvatarBitmap(GetAvatarBitmapCallback)
接口拿头像的原图时,有可能会抛出OOM异常。avatar
- 头像文件callback
- 回调对象public static void updateUserAvatar(java.io.File avatar, java.lang.String format, BasicCallback callback)
UserInfo.getBigAvatarBitmap(GetAvatarBitmapCallback)
接口拿头像的原图时,有可能会抛出OOM异常。
此接口可以指定头像文件在后台存储时的扩展名,如果填空或者不填,则后台存储文件时将没有扩展名。
avatar
- 头像文件format
- 文件扩展名,注意名称中不要包括"."callback
- 回调对象public static Message createSingleTextMessage(java.lang.String username, java.lang.String text)
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象用户名text
- 文本内容public static Message createSingleTextMessage(java.lang.String username, java.lang.String appKey, java.lang.String text)
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象用户名appKey
- 聊天对象所属应用的appKeytext
- 文本内容public static Message createGroupTextMessage(long groupID, java.lang.String text)
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组的groupIDtext
- 文本内容public static Message createSingleImageMessage(java.lang.String username, java.io.File imageFile) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象的用户名imageFile
- 图片文件java.io.FileNotFoundException
public static Message createSingleImageMessage(java.lang.String username, java.lang.String appKey, java.io.File imageFile) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象的用户名appKey
- 聊天对象所属应用的appKeyimageFile
- 图片文件java.io.FileNotFoundException
public static Message createGroupImageMessage(long groupID, java.io.File imageFile) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组的groupIDimageFile
- 图片文件java.io.FileNotFoundException
public static Message createSingleVoiceMessage(java.lang.String username, java.io.File voiceFile, int duration) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象的用户名voiceFile
- 语音文件duration
- 语音文件时长java.io.FileNotFoundException
public static Message createSingleVoiceMessage(java.lang.String username, java.lang.String appKey, java.io.File voiceFile, int duration) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象的用户名appKey
- 聊天对象所属应用的appKeyvoiceFile
- 语音文件duration
- 语音文件时长java.io.FileNotFoundException
public static Message createGroupVoiceMessage(long groupID, java.io.File voiceFile, int duration) throws java.io.FileNotFoundException
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组groupIDvoiceFile
- 语音文件duration
- 语音文件时长java.io.FileNotFoundException
public static Message createSingleFileMessage(java.lang.String userName, java.lang.String appKey, java.io.File file, java.lang.String fileName) throws java.io.FileNotFoundException, JMFileSizeExceedException
Conversation.createSendMessage(MessageContent)
接口来创建消息userName
- 聊天对象的用户名appKey
- 聊天对象所属应用的appKeyfile
- 发送的文件fileName
- 指定发送的文件名称,如果不填或为空,则默认使用文件原名。java.io.FileNotFoundException
JMFileSizeExceedException
public static Message createGroupFileMessage(long groupID, java.io.File file, java.lang.String fileName) throws java.io.FileNotFoundException, JMFileSizeExceedException
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组groupIDfile
- 发送的文件fileName
- 指定发送的文件名称,如果不填或为空,则默认使用文件原名。java.io.FileNotFoundException
JMFileSizeExceedException
public static Message createSingleVideoMessage(java.lang.String userName, java.lang.String appKey, android.graphics.Bitmap thumbImage, java.lang.String thumbFormat, java.io.File videoFile, java.lang.String videoFileName, int duration) throws java.io.IOException
Conversation.createSendMessage(MessageContent)
接口来创建消息userName
- 聊天对象用户名appKey
- 聊天对象所属应用appkeythumbImage
- 视频缩略图,可不填。thumbFormat
- 视频缩略图格式名videoFile
- 视频文件对象videoFileName
- 视频文件名称,如果不填或为空,则默认使用文件原名duration
- 视频时长java.io.IOException
public static Message createGroupVideoMessage(long groupID, android.graphics.Bitmap thumbImage, java.lang.String thumbFormat, java.io.File videoFile, java.lang.String videoFileName, int duration) throws java.io.IOException
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组groupIDthumbImage
- 视频缩略图,可不填。thumbFormat
- 视频缩略图格式名videoFile
- 视频文件对象videoFileName
- 视频文件名称,如果不填或为空,则默认使用文件原名duration
- 视频时长java.io.IOException
public static Message createSingleLocationMessage(java.lang.String username, java.lang.String appKey, double latitude, double longitude, int scale, java.lang.String address)
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象的用户名appKey
- 聊天对象所属应用的appKeylatitude
- 纬度信息longitude
- 经度信息scale
- 地图缩放比例address
- 详细地址信息public static Message createGroupLocationMessage(long groupId, double latitude, double longitude, int scale, java.lang.String address)
Conversation.createSendMessage(MessageContent)
接口来创建消息groupId
- 群组groupIDlatitude
- 纬度信息longitude
- 经度信息scale
- 地图缩放比例address
- 详细地址信息public static Message createSingleCustomMessage(java.lang.String username, java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象usernamevaluesMap
- 包含自定义键值对的map.public static Message createSingleCustomMessage(java.lang.String username, java.lang.String appKey, java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
Conversation.createSendMessage(MessageContent)
接口来创建消息username
- 聊天对象usernameappKey
- 聊天对象所属应用的appKeyvaluesMap
- 包含自定义键值对的map.public static Message createGroupCustomMessage(long groupID, java.util.Map<? extends java.lang.String,? extends java.lang.String> valuesMap)
Conversation.createSendMessage(MessageContent)
接口来创建消息groupID
- 群组groupIDvaluesMap
- 包含了自定义键值对的mappublic static Message createAtGroupMembersMessage(long groupID, java.util.List<UserInfo> atList, MessageContent content)
Conversation.createSendMessage(MessageContent, List, String)
接口来创建消息.groupID
- 群组groupIDatList
- 将要@的群成员的UserInfo Listcontent
- 创建的消息体public static void sendMessage(Message message)
MessageStatus
,forwardMessage(Message, Conversation, MessageSendingOptions, RequestCallback)
.
message
- 消息对象public static void sendMessage(Message message, MessageSendingOptions options)
MessageSendingOptions
对发送的一些发送参数做配置,
注意这些配置仅对本次消息发送生效。MessageStatus
,forwardMessage(Message, Conversation, MessageSendingOptions, RequestCallback)
.
message
- 消息对象options
- 消息发送时的控制选项。public static void forwardMessage(Message message, Conversation conv, MessageSendingOptions options, BasicCallback callback)
forwardMessage(Message, Conversation, MessageSendingOptions, RequestCallback)
instead.Message.isSupportForward()
message
- 需要转发的消息对象conv
- 目标会话options
- 消息转发时的控制选项,仅对此次发送生效, null则使用默认配置callback
- 回调函数public static void forwardMessage(Message message, Conversation conv, MessageSendingOptions options, RequestCallback<Message> callback)
Message.isSupportForward()
才可转发,符合转发要求后会创建新的消息发送,
创建的消息会在回调中返回(无论发送是否成功),如果不符合转发要求则不会创建新消息 message返回null。message
- 需要转发的消息对象conv
- 目标会话options
- 消息转发时的控制选项,仅对此次发送生效, null则使用默认配置callback
- 回调函数public static void sendSingleTransCommand(java.lang.String username, java.lang.String appKey, java.lang.String msg, BasicCallback callback)
CommandNotificationEvent
事件通知。
sdk不会将此类透传消息内容本地化。username
- 目标的用户名appKey
- 目标的appKey, 如果传入null或空字符串,则默认用本应用的appKeymsg
- 发送的消息内容callback
- 回调函数public static void sendGroupTransCommand(long gid, java.lang.String msg, BasicCallback callback)
CommandNotificationEvent
事件通知。
sdk不会将此类透传消息内容本地化。gid
- 群组的gidmsg
- 发送的消息内容callback
- 回调函数public static void sendCrossDeviceTransCommand(PlatformType platformType, java.lang.String msg, BasicCallback callback)
CommandNotificationEvent
事件通知。
sdk不会将此类透传消息内容本地化。platformType
- 平台类型,其中PlatformType.all
表示发送给当前多端在线的其他所有设备(不包括本设备)。
msg
- 发送的消息内容callback
- 回调函数public static java.util.List<Conversation> getConversationList()
注意此接口返回的结果中不包含聊天室会话,如果需要获取聊天室会话,请使用getChatRoomConversationList()
或者getChatRoomConversation(long)
接口获取。
public static java.util.List<Conversation> getChatRoomConversationList()
public static java.util.List<Conversation> getConversationListByDefault()
注意此接口返回的结果中不包含聊天室会话,如果需要获取聊天室会话,请使用getChatRoomConversationList()
或者getChatRoomConversation(long)
接口获取。
public static Conversation getSingleConversation(java.lang.String username)
username
- 对象的userNamepublic static Conversation getSingleConversation(java.lang.String username, java.lang.String appkey)
username
- 用户的usernameappkey
- 用户所属应用的appkeypublic static Conversation getGroupConversation(long groupID)
groupID
- 群组的groupIDpublic static Conversation getChatRoomConversation(long roomID)
roomID
- 群组的groupIDpublic static boolean deleteSingleConversation(java.lang.String userName)
userName
- 用户的usernamepublic static boolean deleteSingleConversation(java.lang.String username, java.lang.String appkey)
username
- 用户的usernameappkey
- 用户所属应用的appkeypublic static boolean deleteGroupConversation(long groupID)
groupID
- 群组的groupIDpublic static boolean deleteChatRoomConversation(long roomID)
roomID
- 聊天室roomIDpublic static UserInfo getMyInfo()
public static void setNotificationMode(int mode)
setNotificationFlag(int)
insteadmode
- 通知展示类型,包括:NOTI_MODE_NO_NOTIFICATION
不展示通知 NOTI_MODE_DEFAULT
展示通知,有声音有震动。NOTI_MODE_NO_SOUND
展示通知,无声音有震动NOTI_MODE_NO_VIBRATE
展示通知,有声音无震动NOTI_MODE_SILENCE
展示通知,无声音无震动
public static void setNotificationFlag(int flag)
flag
- notification flag,包括
FLAG_NOTIFY_WITH_SOUND
,
FLAG_NOTIFY_WITH_LED
,
FLAG_NOTIFY_WITH_VIBRATE
等.
支持 '|' 符号联结各个参数
public static int getNotificationFlag()
@Deprecated public static void enterSingleConversaion(java.lang.String username)
enterSingleConversation(String, String)
instead.默认进入的是本应用appkey下用户的会话。此接口传入的数据采用覆盖逻辑,后面传入的参数会覆盖掉之前的设置。
username
- 聊天对象的usernamepublic static void enterSingleConversation(java.lang.String username)
默认进入的是本应用appkey下用户的会话。此接口传入的数据采用覆盖逻辑,后面传入的参数会覆盖掉之前的设置。
username
- 聊天对象的usernamepublic static void enterSingleConversation(java.lang.String username, java.lang.String appkey)
此接口传入的数据采用覆盖逻辑,后面传入的参数会覆盖掉之前的设置。
username
- 聊天对象的usernameappkey
- 对象所属appkey,若appkey为空则默认填充本应用的appkeypublic static void enterGroupConversation(long groupID)
此接口传入的数据采用覆盖逻辑,后面传入的参数会覆盖掉之前的设置。
groupID
- 聊天群组的groupID@Deprecated public static void exitConversaion()
exitConversation()
instead.public static void exitConversation()
public static void createGroup(java.lang.String groupName, java.lang.String groupDesc, CreateGroupCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述callback
- 回调接口public static void createGroup(java.lang.String groupName, java.lang.String groupDesc, java.io.File groupAvatarFile, java.lang.String format, CreateGroupCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
使用此接口创建群组时可以指定群头像,并且可以指定头像文件在后台存储时的扩展名,如果填空或者不填,则后台存储文件时将没有扩展名。
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述groupAvatarFile
- 群组头像文件format
- 头像文件扩展名,注意名称中不要包括"."callback
- 回调接口public static void createGroup(java.lang.String groupName, java.lang.String groupDesc, int maxMemberCount, java.io.File groupAvatarFile, java.lang.String format, CreateGroupCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
使用此接口创建群组时可以指定群头像,并且可以指定头像文件在后台存储时的扩展名,如果填空或者不填,则后台存储文件时将没有扩展名。
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述maxMemberCount
- 群成员上限,需大于2groupAvatarFile
- 群组头像文件format
- 头像文件扩展名,注意名称中不要包括"."callback
- 回调接口public static void createPublicGroup(java.lang.String groupName, java.lang.String groupDesc, CreateGroupCallback callback)
GroupInfo.addGroupKeeper(List, BasicCallback)
,
同时公开群组支持申请入群操作applyJoinGroup(long, String, BasicCallback)
,
申请入群时也需要群主或管理员审批, 需要审批入群时群主和管理员会收到GroupApprovalEvent
事件
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述callback
- 回调接口public static void createPublicGroup(java.lang.String groupName, java.lang.String groupDesc, java.io.File groupAvatarFile, java.lang.String format, CreateGroupCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
使用此接口创建群组时可以指定群头像,并且可以指定头像文件在后台存储时的扩展名,如果填空或者不填,则后台存储文件时将没有扩展名。
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述groupAvatarFile
- 群组头像文件format
- 头像文件扩展名,注意名称中不要包括"."callback
- 回调接口public static void createPublicGroup(java.lang.String groupName, java.lang.String groupDesc, int maxMemberCount, java.io.File groupAvatarFile, java.lang.String format, CreateGroupCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
使用此接口创建群组时可以指定群头像,并且可以指定头像文件在后台存储时的扩展名,如果填空或者不填,则后台存储文件时将没有扩展名。
通过GroupBasicInfo.getGroupType()
得到群组类型
groupName
- 群组名称groupDesc
- 群组描述maxMemberCount
- 群成员上限,需大于2groupAvatarFile
- 群组头像文件format
- 头像文件扩展名,注意名称中不要包括"."callback
- 回调接口public static void applyJoinGroup(long groupID, java.lang.String reason, BasicCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
),
才能发送入群申请groupID
- 申请加入群组的gidreason
- 申请理由,可为nullcallback
- public static void addGroupMembers(long groupID, java.util.List<java.lang.String> userNameList, BasicCallback callback)
addGroupMembers(long, String, List, BasicCallback)
groupID
- 群组的groupIDuserNameList
- 添加进群组的成员username集合callback
- 回调接口public static void addGroupMembers(long groupID, java.lang.String appKey, java.util.List<java.lang.String> userNameList, BasicCallback callback)
groupID
- 群组的groupIDappKey
- 指定的appKey,如果为空则在本应用appKey下查找用户userNameList
- 添加进群组的成员username集合callback
- 回调接口public static void addGroupMembers(long groupID, java.lang.String appKey, java.util.List<java.lang.String> userNameList, java.lang.String reason, BasicCallback callback)
createPublicGroup(String, String, CreateGroupCallback)
可以指定邀请入群的理由,群主和管理员审批入群GroupApprovalEvent
时可以看到理由
groupID
- 群组的groupIDappKey
- 指定的appKey,如果为空则在本应用appKey下查找用户userNameList
- 添加进群组的成员username集合reason
- 邀请入群的理由callback
- 回调接口public static void removeGroupMembers(long groupID, java.util.List<java.lang.String> userNameList, BasicCallback callback)
removeGroupMembers(long, String, List, BasicCallback)
groupID
- 群组的groupIDuserNameList
- 踢出群组的成员username集合callback
- 回调接口public static void removeGroupMembers(long groupID, java.lang.String appKey, java.util.List<java.lang.String> userNameList, BasicCallback callback)
groupID
- 群组的groupIDappKey
- 指定的appKey,如果appKey为空则在本应用appKey下查找用户userNameList
- 踢出群组成员的username集合callback
- 回调接口public static void adminDissolveGroup(long groupID, BasicCallback callback)
EventNotificationContent.EventNotificationType.group_dissolved
groupID
- 群组idcallback
- 回调public static void updateGroupName(long groupID, java.lang.String groupName, BasicCallback callback)
GroupInfo.updateName(String, BasicCallback)
insteadgroupID
- 群组的groupIDgroupName
- 群名称callback
- 回调接口public static void updateGroupDescription(long groupID, java.lang.String groupDesc, BasicCallback callback)
GroupInfo.updateDescription(String, BasicCallback)
insteadgroupID
- 群组groupIDgroupDesc
- 群组描述callback
- 回调接口public static void exitGroup(long groupId, BasicCallback callback)
groupId
- 群组的groupIDcallback
- 回调接口public static void getGroupIDList(GetGroupIDListCallback callback)
callback
- 回调接口public static void getGroupInfo(long groupID, GetGroupInfoCallback callback)
groupID
- 群组的groupIDcallback
- 回调接口public static void getGroupMembers(long groupID, GetGroupMembersCallback callback)
getGroupMembers(long, RequestCallback)
insteadgroupID
- 群组groupIDcallback
- 回调接口public static void getGroupMembers(long groupID, RequestCallback<java.util.List<GroupMemberInfo>> callback)
groupID
- 群组groupIDcallback
- 回调接口public static void getPublicGroupListByApp(java.lang.String appKey, int start, int count, RequestCallback<java.util.List<GroupBasicInfo>> callback)
createPublicGroup(String, String, CreateGroupCallback)
,
群基本信息定义见GroupBasicInfo
appKey
- 指定应用的appKeystart
- 起始位置count
- 获取个数callback
- 接口回调public static void registerEventReceiver(java.lang.Object receiver)
receiver
- 消息接收类对象public static void registerEventReceiver(java.lang.Object receiver, int priority)
receiver
- 事件接收类对象priority
-
事件接收者接收事件的优先级,默认值为0,优先级越高将越先接收到事件。(优先级只对同一个线程模式中的接收者有效)public static void unRegisterEventReceiver(java.lang.Object receiver)
receiver
- 消息接收类对象public static void getBlacklist(GetBlacklistCallback callback)
callback
- 回调接口public static void addUsersToBlacklist(java.util.List<java.lang.String> usernames, BasicCallback callback)
addUsersToBlacklist(List, String, BasicCallback)
usernames
- 被加入黑名单的用户username列表callback
- 回调接口public static void addUsersToBlacklist(java.util.List<java.lang.String> usernames, java.lang.String appKey, BasicCallback callback)
usernames
- 准备添加进黑名单的username集合appKey
- 指定的appKey,如果appKey为空则在本应用appKey下查找用户callback
- 回调接口public static void delUsersFromBlacklist(java.util.List<java.lang.String> usernames, BasicCallback callback)
delUsersFromBlacklist(List, String, BasicCallback)
usernames
- 被移出黑名单的用户username集合callback
- 回调接口public static void delUsersFromBlacklist(java.util.List<java.lang.String> usernames, java.lang.String appKey, BasicCallback callback)
usernames
- 准备移出黑名单的username集合appKey
- 指定的appKey,如果appKey为空则在本应用appKey下查找用户callback
- 回调接口public static void getNoDisturblist(GetNoDisurbListCallback callback)
callback
- 回调接口public static void getBlockedGroupsList(GetGroupInfoListCallback callback)
callback
- 回调接口public static void setNoDisturbGlobal(int noDisturbGlobal, BasicCallback callback)
noDisturbGlobal
- 1表示设置,其他表示取消callback
- 回调接口public static void getNoDisturbGlobal(IntegerCallback callback)
callback
- 回调接口public static int getAllUnReadMsgCount()
public static java.lang.String getSdkVersionString()