flutter项目-微信页面仿制和部分逻辑修改

时间:2020-03-03 11:08:56   收藏:0   阅读:106

1、需求:

  仿制微信启动页后的四个页面

  聊天页面可打开,可以自由模拟聊天

  联系人界面可自由添加联系人,联系人信息可点开

  二维码可更换,头像可更换,id可更换,昵称可更换

  需要有群发功能,群发消息支持图片和问题,界面要高仿,支持消息删除

2、实现:

  不能重复造轮子,感谢前辈的无私奉献,基本实现了需求点1.

  已有项目的实现方案是底层腾讯im ,上层flutter制作,通过插件调用。需求点2和3要求高度自由定制,im不能实现虚拟聊天和虚拟好友,因此考虑

   方案1:用flutter实现im会话管理,联系人管理功能,实现自由定制 

  方案2:替换掉im、逻辑层代码直接实现数据组织,架空im;

  方案3:部分替换im功能,如联系人,屏蔽im接口,通过缓存和消息机制实现自由添加好友和动态展示,会话功能仍然使用im原有功能。

  最后选择了方案3实现。原因是改动量小,整体实现im会话管理改动和测试量太大。替换掉im工作量更是不能接受。方案3较为灵活,且避免了会话管理等细节的重复实现。较为经济

  

  整体方案:联系人屏蔽im接口。由缓存和逻辑层配合实现。

       聊天功能 由im接口实现,互发消息通过@字符前缀实现。、模拟对方发消息的时候,前缀@,实际存储仍然是当前用户发送消息。view层解析时候,解析为对方消息

       群发功能:界面修改。将发送人信息封装到消息中。view层解析接收人并展示。图片消息复用path字段,view层需要解析正式地址,展示到页面上

       二维码等更换功能,由相应逻辑部分实现,增加全局存储参数功能。

效果图 技术图片

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!