美文网首页
Flutter im简单通信(二)上 集成环信通讯

Flutter im简单通信(二)上 集成环信通讯

作者: 技术混子 | 来源:发表于2020-09-10 14:00 被阅读0次

在环信官方下载demo,具体环境配置可根据文档调试
本地flutter实现
添加依赖:

  im_flutter_sdk:
     git:
       url: https://github.com/easemob/im_flutter_sdk.git
       ref: dev

在main.dart中添加注册环信
注意添加证书后才可以im消息推送

class _MyAppState extends State<MyApp> implements  EMConnectionListener {
 @override
void initState() {
//TODO: init sdk;
EMOptions options = new EMOptions(appKey: "1184170826115380#hximyin");
//    EMPushConfig config = new EMPushConfig();
//    config.enableAPNS('证书名称');
//    options.setPushConfig(config);
EMClient.getInstance().init(options);
EMClient.getInstance().setDebugMode(true);
EMClient.getInstance().addConnectionListener(this);
super.initState();
}.....}

接下来就是环信的通讯方法
->登录(传入用户名密码)

 static void login(String username, String password) {
  print(username + ':' + password);

/// 账号密码登录[id]/[password].
/// 如果登录成功,请调用[onSuccess],如果出现错误,请调用[onError]。
  EMClient.getInstance().login(username, password, onSuccess: (username) {
  print('登录成功 --- $username');
  }, onError: (code, desc) {
  print('登录错误 --- $desc');
});
}

->退出

static void logOut() {
EMClient.getInstance().logout(true, onSuccess: () {
  print('退出登录成功 --- ');
}, onError: (int code, String desc) {
  print('退出登录失败 --- $desc');
});
}

->消息发送(文字,语音,图片,视频),
EMMessageType.TXT 设置发送消息类型
EMTextMessageBody 设置发送消息body,根据类型变换
文字,语音,图片,视频根据类型不同设置不同Type,body就好
这里就不一一赘述,以文字发送为例

static void sendText<T>({
String text,
String nameid,
Function(EMMessage) onSuccess,
Function(String error) onError,
}) async {
EMMessage message = EMMessage.createSendMessage(EMMessageType.TXT);
message.to = nameid; //对方id
message.chatType = fromChatType(0); //聊天类型
EMTextMessageBody body = EMTextMessageBody(text);
message.body = body;
print('-----------MsgId---------->' + message.msgId);
EMClient.getInstance().chatManager().sendMessage(message, onSuccess: () {
  onSuccess(message);
  print('-----------MsgId---------->' + message.msgId);
  print('-----------MessageStatus---------->' + message.status.toString());
});
}

以上就是一个简单的集成环信通信,至于存储可以使用环信提供的DB,为了灵活我是自己写了一套Sql去存储聊天记录,好友列表,聊天列表等信息,这样只需一套本地逻辑就可以集成任何通讯协议。
下期提供群聊,音视频通话,以及demo,欢迎评论点赞

有需要(完整版)移动端即使通讯的老板 欢迎下方留言

相关文章

  • Flutter im简单通信(二)上 集成环信通讯

    在环信官方下载demo,具体环境配置可根据文档调试本地flutter实现添加依赖: 在main.dart中添加注册...

  • iOS集成环信的会话列表

    参考IOS快速集成环信IM - 基于官方的Demo优化,5分钟集成环信IM功能 虽然网上的教程很多,但是自己集成的...

  • iOS 环信SDK集成

    集成环信SDK:我觉得还是使用cocoaPod方便,几句命令行的事!我们集成环信 IM 2.0 Full: 集成U...

  • 环信im小程序demo介绍

    介绍 环信小程序demo是基于环信im SDK开发的一款即时通讯的小程序。这个demo可以帮助开发者们更轻松的集成...

  • 即时聊天

    六个免费开源的即时通讯软件源代码 常见即时通讯:网易IM 、腾讯IM、环信IM、融云IM、leancloud IM...

  • 微信小程序之环信接入

    IM 聊天接入思考过程 前期 初识IM聊天 带着问题去调研 必须接入环信吗?除了环信是否可以接入其他即时通信? 环...

  • 环信集成通讯

    1.制作证书:https://console.easemob.com/index.html#/app/AppNot...

  • 集成环信即时通讯云V3.0遇到的坑点

    不知道环信及时通讯和想要集成环信及时通讯的请移步环信官网http://www.easemob.com 在讲述自己遇...

  • 先定一个小目标,比如写一个QQ

    GitHub地址 泛聊 其他IM开源项目 项目简介 本项目是即时通讯的示例项目,使用了MVP模式,集成了环信SDK...

  • iOS集成环信实现简单的IM通讯

    近期项目不算太忙,就闲下来就研究下环信的SDK,集成的是3.2.3版本的,中间遇到了不少的坑,也在网上找了一些好的...

网友评论

      本文标题:Flutter im简单通信(二)上 集成环信通讯

      本文链接:https://www.haomeiwen.com/subject/iakpektx.html