【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

发布时间:2022-06-26 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

# 简单描述F1a;

        此产品是本人耗时12day开发出来的,采用的是uniapp框架开发出来的,可快速打包上线也可以进行二次开发符合自己的具体需求。

        为什么要选择uni-app框架去开发?

                跨端、周期快、满足需求

                1、跨端:uniapp可同时发布H5、APP(安卓、IOS)微信小程序等....

                2、周期:减轻开发成本,如果你用原生安卓和IOS、小程序去开发,周期长,成本高

                3、应用层的业务需求可以满足,底层的东西可通过插件去完成,定义基座

# 功能模块:

        聊天、通讯录、我

# 效果展示:

## 主会话界面

        ### 功能描述:

1、实时监听:全局监听好友发送过来的会话消息,并置顶在上面更新消息会话

2、好友列表:获取头像昵称、聊天记录回显

3、时间计算:计算好友是什么时候发送过来的会话消息 如:刚刚、分钟、天数...

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

## 聊天界面

        ### 功能描述:

1、基础通讯:文字聊天、表情发送、录音发送、拍摄照片、发送照片、拍摄视频、发送视频

2、拓展通讯:常用语、发送订单、服务评价(可二次开发自定义添加发红包转账等等功能)

3、高级通讯:语音通话、视频通话

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

@H_274_126@

## 通讯录界面

        ### 功能描述:

1、实时监听:全局监听新好友列表更新

2、好友列表:获取头像、昵称、发消息、删除好友

3、新的朋友:添加好友、实时监听别人添加你为好友

4、手机通讯录:获取本机手机通讯录

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

## 我

        ### 功能描述:

1、我的信息:头像、昵称、ID

2、查看头像、切换登录、退出登录

3、个人资料:个人信息更新修改

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

# 完整项目结构

【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版

# 代码实现完整项目结构

## 连续熬了那么多天的夜终于把项目给干出来了

QQ:1969913702

### 文字发送

sendTextMessage(msg, flag) {
				const to = this.getToAccount();
				const text = flag ? msg : this.inputText;
				const message = uni.$TUIKIT.createTextMessage({
					to,
					conversationTyPE: this.conversation.type,
					payload: {
						text
					}
				});
				this.setData({
					inputText: '',
					sendMessageBTn: false
				});
				this.$sendTIMMessage(message);
			},

### 录音发送

switchAudio() {
				this.setData({
					isAudio: !this.isAudio,
					text: '按住说话'
				});
			},
			handleLongPress(e) {
				this.recorderManager.start({
					duration: 60000,
					// 录音的时长,单位 ms,最大值 600000(10 分钟)
					sampleRate: 44100,
					// 采样率
					numberOfchannels: 1,
					// 录音通道数
					encodeBitRate: 192000,
					// 编码码率
					format: 'aac' // 音频格式,选择此格式创建的音频消息,可以在即时通信 IM 全平台(AndROId、iOS、微信小程序和Web)互通

				});
				this.setData({
					startPoint: e.touches[0],
					title: '正在录音',
					// isRecording : true,
					// canSend: true,
					notShow: true,
					isShow: false,
					isRecording: true,
					popupToggle: true,
					recordTime: 0
				});
				this.recordTimer = setInterval(() => {
					this.recordTime++;
				}, 1000)
			},
			// 录音时的手势上划移动距离对应文案变化
			handleTouchMove(e) {
				if (this.isRecording) {
					if (this.startPoint.clientY - e.touches[e.touches.length - 1].clientY > 100) {
						this.setData({
							text: '抬起停止',
							title: '松开手指,取消发送',
							canSend: false
						});
					} else if (this.startPoint.clientY - e.touches[e.touches.length - 1].clientY > 20) {
						this.setData({
							text: '抬起停止',
							title: '上划可取消',
							canSend: true
						});
					} else {
						this.setData({
							text: '抬起停止',
							title: '正在录音',
							canSend: true
						});
					}
				}
			},

### 图片发送#

sendImageMessage(type) {
				uni.chooseimage({
					sourceType: [type],
					count: 1,
					success: res => {
						if (res) {
							const message = uni.$TUIKit.createImageMessage({
								to: this.getToAccount(),
								conversationType: this.conversation.type,
								payload: {
									file: res
								},
								onPRogress: percent => {
									message.percent = percent;
								}
							});
							this.$sendTIMMessage(message);
						}
					}
				});
			},

### 发送视频

sendVideoMessage(type) {
				uni.chooseVideo({
					sourceType: [type],
					// 来相册或者拍摄
					maxDuration: 60,
					// 设置最长时间60s
					camera: 'back',
					// 后置摄像头
					success: res => {
						if (res) {
							const message = uni.$TUIKit.createVideoMessage({
								to: this.getToAccount(),
								conversationType: this.conversation.type,
								payload: {
									file: res
								},
								onProgress: percent => {
									message.percent = percent;
								}
							});
							this.$sendTIMMessage(message);
						}
					}
				});
			},

### 双人音视频通话

TUicalling.call({
    userID: 'user1',
    type: 1
},(res) => {
    console.LOG(JSON.stringify(res))
})

后续再更新文章.......

脚本宝典总结

以上是脚本宝典为你收集整理的【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版全部内容,希望文章能够帮你解决【三端通用】微信即时通讯+视频聊天(安卓、IOS、小程序)项目完整版所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。