其它/424KB
微聊IM即时通讯聊天是一款提供稳定安全的即时通讯软件,在最新微聊IM聊天即时通讯聊天源码app中,多样化的聊天模式,自带操作说明,用户可以随时发布聊天信息或与其他人发布聊天信息的人聊天,快下载微聊IM即时通讯聊天试试吧!
源码:im.jstxym.top
设计草图
使用kotlin+jetpack+flow高仿微信商用聊天项目——基于腾讯即时通讯和实时音视频服务
登录/对话界面/通讯录/聊天界面/自定义表情/更多界面
使用kotlin+jetpack+flow高仿微信商用聊天项目——基于腾讯即时通讯和实时音视频服务
群聊详情/好友详情/添加好友/发送位置
使用kotlin+jetpack+flow高仿微信商用聊天项目——基于腾讯即时通讯和实时音视频服务
深色模式/音视频通话界面
现有功能
登录、注册、退出
更改用户昵称和头像
添加好友、群组
发送信息:支持文字、图片、视频、文件、表情、大表情、位置、语音
支持单聊、群聊、音视频通话
群聊功能:创建群聊、解散群聊、更改群聊信息、设置禁止、设置管理员、邀请/移除成员、设置群名片
线下消息推送:目前集成小米推送
转发消息:目前只能转发短信,SDK不支持
参考消息:由于SDK不支持,目前只能参考短信
全局搜索:由于SDK不知道,目前只能在本地搜索好友和群聊
二维码:显示我、朋友、群聊二维码,支持扫二维码
其他聊天功能:对话置顶,不中断对话(由于SDK不支持,单聊离线消息无效),标记未读,设置聊天界面背景
统计服务:集成友盟,支持总用户、活跃和崩溃统计
其他功能:文件预览、深色模式
实现的功能
音视频通话封装重构:目前官方demo提供的用于封装的代码没有很好的封装。希望封装后能支持关闭通话界面:类似于微信,邀请人同时加入通话,在群界面中主动添加。
聊天界面和键盘切换上的表情会跳转。可以参考这两个开源项目(好像没有这个问题):SmartKeyboardManager,MyEmjkeyBoard。
预览当前位置的媒体文件,其他位置的视频媒体将播放。
改写选图框架主要是重构代码和布局,让功能更完善,界面更美观,扩展性更强。最终有望独立开源。
重构对话框功能主要是重构代码和布局,使功能更完善,界面更美观,扩展性更强。最终有望独立开源。
重构文件选择功能主要是重构代码和布局,使功能更完善,界面更美观,扩展性更强。最终有望独立开源。
重构群聊界面和与我无关的音视频通话消息。这些消息是简单的提示,例如添加组。
重构项目,修改大部分功能,使其更适合jetpack规范的实现。
内测泄漏及性能优化:目前项目部分部分存在内存泄漏,部分功能性能不是很好。
禁止词之后的消息不能转发到该会话。
在应用后台,如果应用被系统杀死后返回,直接调用腾讯SDK会报错,未登录,需要腾讯SDK。但是,如果您在每次通话之前检查您是否登录,它会更加复杂。目前还没有找到好的解决办法。
如果点击音视频通话通知进入启动界面,不显示等待时间。
转发消息时可以预览消息,类似微信、QQ转发消息的效果。
播放语音消息时,实现类型为微信,指甲贴近耳朵即可切换听筒。
它可以将系统中各种类型的消息分享给我们的应用程序,如微信、QQ等。
集成其他厂商的离线推送调用。
支持转账和发送红包。
实现了微信公众号的基本功能:比如后台可以设置公众号,然后配置菜单,可以自动回复。
预期最终效果
除第三方SDK无法实现或难以实现的功能外,其他功能均可使用且稳定达到在线运行状态。
后来,融云即时通讯服务/websocket有两个独立的版本。
目的
学习、毕业设计、面试项目
基于项目在线运营,或外包,或内部私聊(此版本音视频使用第三方SDK,无法部署,只能使用websocket实现的后期版本);请不要直接使用。
开发环境
Android客户端:Android studio 4.1 + kotlin 1.4 + gradle 6.5
Spring boot 服务器:IntelliJ idea 2020 + java 15 + gradle 6.7
服务器数据库:MySQL,开发环境8.0 + 在线环境5.7
项目开发环境:MacOS 11.2 + java 15
核心知识点
Kotlin、jetpack、MVVM、flow、MVC、矢量图、生命周期、动态权限、Emoji、eventbus、高德地图、视频播放、hilt依赖注入、内存泄漏检测与修复、腾讯即时通讯、腾讯实时音视频。
微信支持跨通信运营商、跨操作系统平台通过网络快速发送免费(需消耗少量网络流量)语音短信、视频、图片和文字,同时,也可以使用通过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“漂流瓶”、“朋友圈”、”公众平台“、”语音记事本“等服务插件。
微信提供公众平台、朋友圈、消息推送等功能,用户可以通过“摇一摇”、“搜索号码”、“附近的人”、扫二维码方式添加好友和关注公众平台,同时微信将内容分享给好友以及将用户看到的精彩内容分享到微信朋友圈。
微聊是烈火数码科技有限公司推出的一款为智能手机提供即时通讯服务的免费应用程序。
微聊支持跨通信平台运营商,跨操作系统平台通过网络(仅需少量网络流量)快速高效收发免费语音短信、图片和文字,支持多人群聊的手机聊天软件。
基于通讯录的开放好友关系,手机号就是用户名,无需另外注册帐号
支持收发语音短信、图片(包括表情)、和文字信息
支持单人聊天和多人群聊两种模式
支持多平台相互收发消息(先阶段支持Android,其中iPhone、塞班S60平台即将登场,敬请期待)
省流量:使用微聊收发图片、语音只要1M就可以发约1500条文字信息,800~1200秒语音信息。
微聊独家功能之一:同城交友
微聊的同城交友功能是微聊安卓版本1.1.0的特色功能,也是目前移动IM软件的首创功能。微聊同城交友功能将移动即时通讯软件的免费语音对讲以及手机交友完美结合,为微聊用户特别是单身男女搭建了一个浪漫交友的平台。用户在“找好友”界面中能够轻松发现微聊的同城交友的功能。点击进去即可看见微聊同城交友的概况:最新(最新注册的微聊用户)、最近(最近登陆过微聊的用户)两个按钮,将微聊的用户分类标注出来,通过头像与昵称展示的方式呈现在微聊界面。用户通过点击头像可以查看其诸如昵称、个性签名、城市、生日等信息,并可以自由选择给对方发信息、对讲、加为好友或加入黑名单。
移动社交将成为人们日常生活的主流社交形式,照片分享成移动社交的应用新宠,目前市场上手机的照相功能越来越完善正是这一趋势的反映。微聊同城交友功能,也是在前期的微聊找好友基础上,将微聊用户信息以照片墙的形式展示出来,以方便用户之间更生动形象地认识对方。在移动即时通讯领域,微聊一直走差异化发展的路线,力求在移动即时通讯领域给用户提供贴心的服务。微聊同城交友功能的这一点改善,正是微聊差异化发展路线的一个体现。
微聊独家功能之二:语音无口误 聊天时可即时收回说错的话
使用过微聊1.1.0版本的用户发现,新版本的微聊不单止增加了同城交友的功能这一惊喜,还有一个语音对讲取消发送的功能!俗话说,“祸从口出”,说的是人们说话时不谨慎容易惹祸上身。在好友聊天中,“灾祸”的事情不大可能发生,但是因为说话太快或者不小心说错话让双方囧、糗等尴尬的情况却并不少见。微聊“语音无口误”(即错误语音取消发送)功能可以帮助用户减少这方面的困扰:在语音对讲的录音阶段,如果想要将已经说出去的话收回来不让对方听到,可以按照微聊语音聊天界面上的文字提示,将“按住说话”按钮移动到“移到这里取消”,松开按钮即可取消发送,将说错的话收回去。歌中有唱,“有多少爱可以重来”,大家也常说,“覆水难收”,人生没有后悔药,生活中已经有太多的事情难以重来啦,但微聊的语音聊天中,你想要的完美表达,让你随心尽兴去演绎。说错的话,你想要怎么收就怎么收,你想重来多少次就重来多少次,让您在好友中一如既往地保持着君子淑女的形象。
错误语音取消发送功能
作为微聊的资深用户,笔者深感微聊设计研发上的用户优先的理念,考虑周到,处处为用户着想,相当人性化。纵观目前的移动即时通讯领域,即时通讯软件语音取消发送这方面的功能并不多见。微聊做到了这一点,不得不说微聊的研发团队研发的理念贴近用户,处处为用户着想。移动即时通讯这个市场的潜力非常大,竞争也非常激烈,唯有不断研发出适合用户的产品,推出更多人性化的功能,才能够最终赢得用户。从这一点上看,微聊具备冲刺市场的长远眼光,或将成为2012年最受欢迎的明星手机应用软件。
微聊最强杀手锏:开放的好友关系链
微聊的同城交友功能,与微聊拥有开放的好友关系链是分不开的。开放的好友关系链,对于微聊的意义是什么呢?笔者认为,开放的好友关系链于微聊而言,最大的意义就是使微聊具备了“工具”的性质,成为人们学习、工作以及社交的左右手。使用过微聊一段时间的用户会有种体验,微聊在不知不觉中就渗透进日常生活,诗意一点说,是“润物细无声”。为什么会这样呢?这是因为微聊使用起来就像人们日常使用手机打电话、发短信。基于手机通讯录的微聊,微聊好友主要来自手机通讯录上的联系人,但是非微聊好友也能够免费即时通讯,就像人们日常打电话发短信,不一定非得是手机通讯录上的联系人才能够实现。而微聊比传统的打电话发短信成本更低,且形式多样。有趣有爱,生动活泼又实惠的微聊实现聊天体验,让很多用户第一次接触就爱不释手了。