微前端架构如何改变企业的开发模式与效率提升
974
2022-10-14
微信聊天框架搭建,高仿微信聊天框架
XZ_WeChat
博客介绍地址:戳这里
建议使用真机测试。 如果遇到问题,大家可以直接在Issues提问,这样大家都能看到,共同提高。
做了两年IM相关工作了,去年是集成环信的SDK实现的IM功能,今年公司拥有自己的长连接服务器,于是从头自己定协议然后一步步实现了IM的整体功能,基本把微信IM有关的内容都实现了。最近开始整理过去的一些知识,于是先从聊天框架下手,整理出这个简易的聊天框架,方便大家学习交流。
由于作者的电脑环境被折腾坏了,不能安装cocoapods来管理一些用到的三方,所以直接导入进了该框架,这一点大家不要学习。
该框架目前支持的消息类型:文本消息(包含表情),图片消息,语音消息,视频消息,文件消息(pdf,word,excel,ppt,png,html等格式)。
如果你想展示文件消息,你需要把文件拷贝到沙盒的/Library/Caches/Chat/File目录下,由于我以前是从PC端发送文件到手机端进行的展示,所以目前只能你手动拷贝了。
项目中展示的视频已经转成了mp4类型,而且也经过了压缩,语音也转换成了amr格式,节省流量的同时,可以和安卓端兼容。
你能从该框架学习到什么:
聊天框架的搭建表情键盘的实现语音相关的知识视频相关的知识文件相关的功能转场动画相关的知识数据模型和尺寸模型分离你能清楚的了解到在实战项目中IM的实现各种封装完善的工具类拿走即用(叫我雷锋o(╯□╰)o)等等等很多知识点都可以学习到
目前该框架这是初步,我还有好多功能没有加入进去,后续会慢慢加入,包括:
消息的转发、拷贝、撤回文章的分享订阅号的功能红包的功能本地缓存的功能(以数据库实现)草稿箱的功能等等等还有好多好多
更新日志:
10月8日:添加了消息的拷贝、删除、撤回功能,由于转发功能需要用到数据库所以我只添加了转发的UI,等添加了数据库后再完善。注意这里的只有自己的消息并且是发送成功的消息才可以撤回,我这里限制的是5分钟内的消息可以撤回,超过规定时间不允许撤回。
10月12日:添加了系统消息,当消息撤回的时候聊天界面上提示一条你撤回了一条消息的提示。当多人聊天的时候,如果一方撤回了一条消息,系统应该给你发送一条指令,根据这条指令你识别出是哪一条消息被撤回了,然后删除这条消息,并且插入一条谁谁撤回了一条消息。
如果你在学习过程中有什么问题可以和我留言,大家共同提高。如果该框架能帮助到你,欢迎star,你的关注是我最大的动力,谢谢!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~