最近为了学习Android开发,特意将原来写的MingQQ Windows版移植到了Android上面,以此练手。通过这次练习,学习到了不少Android开发的相关知识,特别是界面开发部分。
MingQQ的界面模仿了Android QQ的基本功能,虽然体验性完全比不上QQ,但目前技术有限,只能做到现在这水平了,更好的界面用户体验留待以后再提升吧。
下拉刷新目前使用了第三方开源库Android-PullToRefresh,以后再考虑替换成自己写的下拉刷新组件,并增加消息列表的右滑删除功能。
发布的apk包含了动态设置聊天气泡图片的功能,而开源代码里面是没有的。原因是解决*.9.png的水平翻转问题搞得我太辛苦了,所以将其收为私有技术,不发布在开源代码里面了。(高手勿笑,或许在你们眼里这只是一个很简单的问题)
2000人的大群群聊时,群成员昵称可能显示不了,因为获取群信息的协议未完善,群信息数据量太大无法一次性返回,好像目前的官方WebQQ也存在这个问题,这个问题暂时也不管了,以后看情况再解决。
希望以后可以写一个自己的移动即时通讯App,使用xmpp协议,包括服务器端和客户端。
已实现功能:
1、登录、注销、保持在线。
2、好友、群、消息列表。
3、发送/接收好友、群、群成员消息。
4、表情选择。
5、简单图片浏览。
6、个性化聊天气泡图片设置。
待实现功能:
1、发送图片功能。
2、完善图片浏览器。
3、发送编辑框的复制剪切粘贴图片功能。
4、长按气泡弹出复制剪切粘贴菜单功能。
5、消息发送失败处理。
6、网络状况变化通知处理。
目前已知的未解决的小缺陷:
1、表情选择界面的删除键不能够长按连续删除。
2、气泡文字排版混乱。
3、气泡内的图片点击检测不精确,点击图片旁边也能打开图片浏览。
4、点击发送编辑框弹出输入法后,聊天列表内容的位置不是弹出输入法之前的位置。
5、点击好友列表会出现往上滚动的情况,而不是直接而下展开。
6、聊天窗口的下拉刷新在释放刷新后垂直线条断开,并且上划或下划到顶有明显的光晕痕迹。
7、2000人的大群群聊时,群成员昵称可能显示不了。
隐藏功能:
点击“动态”-“气泡、主题、表情”可以设置用户聊天所使用的气泡
点击“设置”- 头像可以切换在线和隐身两种状态
点击“设置”-“关于”可以退出当前帐号
声明:
程序所使用的一切资源图片和协议的版权依法为腾迅公司所有,只供个人学习研究使用,请勿用于非法用途,否则后果自负。
App运行截图: