【附源码】基于环信鸿蒙IM SDK实现一个聊天Demo

项目背景

本项目基于环信IM 鸿蒙SDK 打造的鸿蒙IM Demo,完全适配HarmonyOS NEXT系统,实现了发送消息,添加好友等基础功能。代码开源,功能简洁,如果您有类似开发需求可以参考。

源码地址:https://github.com/easemob/easemob-support/tree/dev/Harmony/Harmony_demo

运行本项目前,需登录环信console获取自己的APPKEY

效果演示

鸿蒙Demo

项目主要结构

复制代码
└─entry 
  ├─ libs // 本地包路径
  │  └─ chatsdk-1.2.1.har // 环信sdk
  └─ src
     └─ main
        └─ ets
           ├─ connon //公共组件
           │  ├─ AudioRecorder // 录音类(用于发送语音消息)
           │  ├─ CommTitleBar // 导航条封装组件
           │  ├─ FriendRequest // 首选项存取(用于保存好友请求的数据)
           │  ├─ FsUtil // 视频生成缩略图类(用于发送视频消息需要传缩略图使用)
           │  ├─ KVStoreManager // kv数据库类(用户保存用户信息,注意是用户头像和昵称)
           │  ├─ PlayAudio // 播放音频文件(用于播放语音消息)
           │  └─ Utils // 工具类
           ├─ model //model
           │  ├─ ConvListData //会话列表model
           │  └─ MessageListData //消息列表model
           ├─ page //页面
           │  ├─ ChatPage //聊天页面 
           │  ├─ ContactPage //联系人页面
           │  ├─ ConversationPage //会话页面
           │  ├─ FriendRequestPage //好友请求页面
           │  ├─ GroupPage //群组页面
           │  ├─ Index //登录页面页面
           │  ├─ MePage //个人中心页面
           │  └─ VideoPage //视频播放页面
           └─ view // view 

运行示例项

  • 1.在入口文件进行初始化,填写自己的appkey

  • 2.登录页面

  • 3.会话页面

  • 4.联系人页面

  • 5.个人页面

  • 6.聊天页面

补充说明

  • 发送语音消息时,需要使用真机,模拟器测试下来录音效果有问题
  • 发送视频消息时,需要使用真机,模拟器测试根据视频文件获取第一帧图片会报错
  • 联系人页面,先从本地获取数据,如果本地没有数据,就从服务器获取

参考文档:

相关推荐
SuperHeroWu75 小时前
如何判断应用在鸿蒙卓易通或者出境易环境下?
华为·harmonyos
大雷神6 小时前
HarmonyOS APP<玩转React>开源教程十五:首页完整实现
react.js·开源·harmonyos
云和数据.ChenGuang7 小时前
鸿蒙智联,极智共生:HarmonyOS与MiniMax智能体的融合新纪元
华为·harmonyos·鸿蒙
不爱吃糖的程序媛8 小时前
已有 Flutter 应用适配鸿蒙平台指导文档
flutter·华为·harmonyos
大雷神8 小时前
HarmonyOS APP<玩转React>开源教程十六:课程列表页面
harmonyos
弓.长.8 小时前
ReactNative for OpenHarmony项目鸿蒙化三方库:react-native-video — 视频播放组件
react native·音视频·harmonyos
坚果派·白晓明8 小时前
在 Ubuntu 中搭建鸿蒙 PC 三方库交叉编译构建开发环境
ubuntu·华为·harmonyos
弓.长.9 小时前
ReactNative for OpenHarmony项目鸿蒙化三方库:react-native-webview — 网页渲染组件
react native·react.js·harmonyos
bear-bear119 小时前
华为路由器主路由+旁路由配置教程
华为·智能路由器·盘路由
UnicornDev9 小时前
【HarmonyOS 6】今日统计卡片实战:运动记录数据概览
华为·harmonyos·arkts·鸿蒙·鸿蒙系统