uniapp+nvue实现仿微信App聊天应用 —— 成功实现好友聊天+语音视频通话功能
基于uniapp + nvue实现的uniapp仿微信App聊天应用 txim 实例项目,实现了以下功能。
1: 聊天会话管理
2: 好友列表
3: 文字、语音、视频、表情、位置等聊天消息收发
4: 一对一语音视频在线通话


技术实现
- 开发环境:HbuilderX + nodejs
- 技术框架:uniapp + vue2.x + node-sass
- 状态管理:Vuex
- 测试环境:App端(Android + IOS)
- 插件:Zhimi-TXIM、Zhimi-TRTCCalling
- 代码:开源
效果概览
在uniapp开发下,安卓和ios端表现效果高度一致,借由nvue的组件渲染机制,在实现组件分离的同时又能兼顾高效的渲染速度,长列表和消息加载速度均在2s内完成渲染。

快速搭建项目

通过uniapp插件市场(腾讯云即时通讯-好友群聊语音图视频)导入示例项目之后,我们需要调整几个地方才可以打包项目
1. 申请免费试用
由于uniapp插件市场的限制,我们需要先申请免费插件试用


2. 修改App图标
由于Demo没有自带图标,因此需要选择一个图片作为图片,点击浏览然后随便选择一张图片,自动生成即可。

3. 选择原生插件
如果是在线试用的选择云端插件,如果是下载在本地的选择本地插件,找到 腾讯云 相关的插件勾选即可

4. 打包自定义基座
因为使用了原生插件,因此我们需要先打包原生基座,点击“发行”菜单后根据下图配置先打包一个供测试的自定义基座

5. 打包完成后选择自定义基座运行
这里是很多人忽略的地方,打包完成之后我们需要选择自定义基座,否则会出现找不到TXIM等报错信息。

获取腾讯云UserId + UserSig
对于官方文档而言,已经有获取方式的描述,这里不过多赘叙,直接参考官方文档:
获取腾讯云UserId+UserSig:腾讯云即时通讯(TXIM) · 语雀
配置腾讯云AppSdkId:目录结构与SDK配置 · 语雀
获取到的UserId和UserSig,我们需要修改源码中login.vue文件这个地方,否则我们无法正常登陆到腾讯云IM

仿微信聊天界面
在demo中其实已经内置了一套简易的api演示,对于仿微信聊天界面部分,需要加官方群获取,这里可以参考

一对一在线语音视频通话
对于使用demo运行的开发者,可以参考(uniapp+nvue开发之仿微信语音+视频通话功能 :实现一对一语音视频在线通话)部署语音视频通话功能。

需要正常使用语音视频通话功能,还需要先开启trtcCalling登陆功能,在源码中login.vue文件中这个地方注释了语音视频通话部分的功能,开发者需要自行打开

至此,今天的uniapp+nvue仿微信App聊天应用,实现好友聊天,语音视频通话功能就分享结束啦,有不清楚的开发者可以加QQ群755910061联系我们哦
uniapp+nvue实现仿微信App聊天应用 —— 成功实现好友聊天+语音视频通话功能的更多相关文章
- uniapp+nvue实现仿微信App界面+功能 —— uni-app实现聊天+语音+视频+图片消息
基于uniapp + nvue实现的uniapp仿微信界面功能聊天应用 txim 实例项目,实现了以下功能. 1: 聊天会话管理 2: 好友列表 3: 文字.语音.视频.表情.位置等聊天消息收发 4: ...
- uniapp+nvue实现仿微信/得物相册插件:选择界面 +自定义相册+图片视频过滤
本篇文章基于uniapp 框架+ nvue,实现了uniapp仿微信/得物相册选择功能实例项目,该插件实例实现了以下功能: 1: 相册过滤 2: 图视频过滤 3: 界面UI定制化 4: 栅格列数定制化 ...
- 高仿微信app (含有发红包,聊天,消息等)用到 Rxjava+Retrofit+MVP+Glide技术
https://github.com/GitLqr/LQRWeChat 技术很牛,可以看看
- 【手把手教程】uniapp + vue 从0搭建仿微信App聊天应用:腾讯云TXIM即时通讯的最佳实践
基于uniapp + vue 实现仿微信App聊天应用实践,实现以下功能 1: 用户登陆 2: 聊天会话管理 3: 文本/图片/视频/定位消息收发 4: 贴图表情消息收发 5: 一对一语音视频在线通话 ...
- Android中使用ExpandableListView实现微信通讯录界面(完善仿微信APP)
之前的博文<Android中使用ExpandableListView实现好友分组>我简单介绍了使用ExpandableListView实现简单的好友分组功能,今天我们针对之前的所做的仿微信 ...
- Vue仿微信app页面跳转动画
10:14:11独立开发者在开发移动端产品时,为了更高效,通常会使用Web技术来开发移动端项目,可以同时适配Android.iOS.H5,稍加改动还可适配微信小程序. 在使用Vue.js开发移动端页面 ...
- uni-app聊天室|vue+uniapp仿微信聊天实例|uniapp仿微信App界面
一.介绍 运用UniApp+Vue+Vuex+swiper+uniPop等技术开发的仿微信原生App聊天室|仿微信聊天界面实例项目uniapp-chatroom,实现了发送图文消息.表情(gif图), ...
- uniapp+nvue开发之仿微信语音+视频通话功能 :实现一对一语音视频在线通话
本篇文章是利用uni-app和nvue实现微信效果功能的第三篇了,今天我们基于uniapp + nvue实现的uniapp仿微信音视频通话插件实例项目,实现了以下功能: 1: 语音通话 2: 视频 ...
- Nuxt+Vue聊天室|nuxt仿微信App界面|nuxt.js聊天实例
一.项目简述 nuxt-chatroom 基于Nuxt.js+Vue.js+Vuex+Vant+VPopup等技术构建开发的仿微信|探探App界面社交聊天室项目.实现了卡片式翻牌滑动.消息发送/emo ...
随机推荐
- SimpleNVR安防监控RTSP/FLV/HLS直播流服务如何分权限添加用户指定通道观看
背景分析 随着SimpleNVR的用户越来越多,很多客户反馈给了我们很宝贵的简易以及用户体验.在此非常感谢大家对我们的支持.其中很多客户不想把所有的视频直播展现出来,想分权限添加新用户,指定通道让其观 ...
- CF1373G
考虑中间格子不能有相同的点,其实是没用的. 其唯一用处是用来规定最后的是无法重叠的. 我们可以证明最后位置的无重叠和中间不重叠是充要的. 那显然可以我们对每个点往后连边: 形式的话的说: 对 \((x ...
- Atcoder Grand Contest 021 F - Trinity(dp+NTT)
Atcoder 题面传送门 & 洛谷题面传送门 首先我们考虑设 \(dp_{i,j}\) 表示对于一个 \(i\times j\) 的网格,其每行都至少有一个黑格的合法的三元组 \((A,B, ...
- Perl语言入门14-17
---------第十四章 字符串与排序------------------- index查找子字符串 my $stuff = "howdy world!"; my $where ...
- R连接mysql数据库方法详解
Warning messages: 1: In odbcDriverConnect("DSN=Rdata;UID=root") : [RODBC] ERROR: state IM0 ...
- 巩固javaweb第十四天
巩固内容: 单行文本框: 单行文本框的基本语法格式如下: < input type="text" name="输入信息的字" value=" ...
- [云原生]Docker - 简介
目录 什么是Docker? 为什么使用Docker? 对比传统虚拟机总结 什么是Docker? Docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业务项目.它基于Go ...
- 【XSS】再谈CSP内容安全策略
再谈CSP内容安全策略 之前每次都是想的很浅,或者只是个理论派,事实证明就是得动手实践 参考 CSP的用法 官方文档 通过设置属性来告诉浏览器允许加载的资源数据来源.可通过Response响应头来设置 ...
- Bitmaps与优化
1.有效的处理较大的位图 图像有各种不同的形状和大小.在许多情况下,它们往往比一个典型应用程序的用户界面(UI)所需要的资源更大. 读取一个位图的尺寸和类型: 为了从多种资源来创建一个位图,Bitma ...
- react-native环境搭建完后,用genymotion运行出错的处理方法
以下方法是争对react-native 0.63版本的 出错提示如下: 模拟器点击reload后,如下提示: 找了网上很多方法,很多都是旧版本的bug处理的方法,没有用,后面经过摸索发现,原来原因是 ...