注册

请问如何创建一条语音和视频的接收消息呢

final EMMessage voiceMessage = EMMessage.createReceiveMessage(EMMessage.Type.VOICE);
OkGo.get(voicepath).tag(this).execute(new FileCallback() {
@Override
public void onSuccess(Response response) {
File file1=response.body();
voiceMessage.setStatus(EMMessage.Status.SUCCESS);
voiceMessage.setFrom(from);
voiceMessage.setTo(to);
voiceMessage.setChatType(EMMessage.ChatType.GroupChat);
voiceMessage.setStatus(EMMessage.Status.SUCCESS);
voiceMessage.setMsgTime(800);
voiceMessage.setProgress(100);
// voiceFile 语音文件路径
// duration,语音事件长度,单位秒
EMVoiceMessageBody emVoiceMessageBody = new EMVoiceMessageBody(file1.getAbsoluteFile(),10);
voiceMessage.addBody(emVoiceMessageBody);
final List emmeMessage = new ArrayList();
emmeMessage.add(voiceMessage);
runOnUiThread(new Runnable() {
@Override
public void run() {
EMClient.getInstance().chatManager().importMessages(emmeMessage);
}
});

}
});代码我目前就这样写的,图片和文字都可以了但语音和视频的却不行,纠结几天了e
已邀请:
您好,请参考
if (type.equals("video")) {
message = EMMessage.createReceiveMessage(EMMessage.Type.VIDEO);
EMVideoMessageBody body = new EMVideoMessageBody();
body.setThumbnailUrl(bodyObject.optString("thumb"));
body.setThumbnailSecret(bodyObject.optString("thumb_secret"));
body.setRemoteUrl(bodyObject.optString("url"));
body.setVideoFileLength(bodyObject.optLong("file_length"));
body.setSecret(bodyObject.optString("secret"));
message.addBody(body);
} else if (type.equals("audio")) {
message = EMMessage.createReceiveMessage(EMMessage.Type.VOICE);
File file = new File("");
EMVoiceMessageBody body = new EMVoiceMessageBody(file, bodyObject.optInt("length"));
body.setRemoteUrl(bodyObject.optString("url"));
body.setSecret(bodyObject.optString("secret"));
body.setFileName(bodyObject.optString("filename"));
message.addBody(body);
}

message.setFrom(from);
message.setTo(to);
message.setMsgTime(timestamp);
message.setLocalTime(timestamp);
message.setMsgId(msgId);
if(chatType.equals("chat")){
message.setChatType(EMMessage.ChatType.Chat);
} else if(chatType.equals("GroupChat")){
message.setChatType(EMMessage.ChatType.GroupChat);
} else if(chatType.equals("ChatRoom")){
message.setChatType(EMMessage.ChatType.ChatRoom);
}
message.setStatus(EMMessage.Status.SUCCESS);
messageList.add(message);

要回复问题请先登录注册