MingQQ v1.0高仿版开源了,使用WebQQ协议实现了QQ客户端基本的聊天功能...

MingQQ目前支持的功能如下:
1、支持普通方式登录、验证码方式登录、注销、保持在线、改变在线状态。
2、支持获取好友列表、群列表、最近联系人列表。
3、支持来消息时头像闪动动画,状态改变时头像变灰或变亮动画。
4、支持好友聊天、群聊天、群成员聊天。支持接收和发送文字、表情和图片消息。
5、支持查看好友信息、群信息、群成员信息。
6、支持获取好友头像、群头像、群成员头像。
7、支持获取和设置用户个性签名。
8、支持登录帐号密码保存。支持字体信息、提取消息热键保存。
9、支持消息记录的本地保存和查看。
10、支持图片浏览器查看聊天图片。

程序使用VS2008+WTL编写,界面模块的代码写得很烂,敬请见谅...

声明:
程序所使用的一切资源图片和协议的版权依法为腾迅公司所有,只供个人学习研究使用,请勿用于非法用途,否则后果自负。

程序运行截图:

MingQQ v1.0高仿版_可执行文件:

http://download.csdn.net/detail/zym_123456/5731543

MingQQ v1.0高仿版_源代码:

http://download.csdn.net/detail/zym_123456/5731611

 

MingQQ项目地址:
https://code.google.com/p/mingqq/


<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
MingQQ Android版发布了,可以在Android手机上登录你的QQ,收发消息哦... 最近为了学习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运行截图: 请到“界面截图”文件夹查看。 MingQQ Android版_APK安装包: http://download.csdn.net/detail/zym_123456/7265697 MingQQ Android版_源代码: http://download.csdn.net/detail/zym_123456/7265757 MingQQ项目地址: https://github.com/zym2014/MingQQ 作者Blog: http://zym.cnblogs.com/ http://blog.csdn.net/zym_123456
是夸平台型,也是夸语言,因为和后端通讯都是通过XML来进行完成的,如果想换个语言(现在是.NET的)比如PHP,只要在配置文件里(XML格式)修改相应的路径让后端文件输出XML格式的文件即可。 三就是里面的JQUERY扩展我都封装起来了,而且都是通过XML进行模板化的,也就是说程序上不用动,直接该XML就可以修改模板了。包括弹出层,右键菜单,滚动条等等。 还有一个最重要的,就是开源。有朋友想研究就用SNV下载吧 首先先说下程序的执行过程吧 当进入index.html文件的时候就开始运行原生的JS,步骤是先加载配置文件,jPushConfig.xml 然后依次加载文档中service节点下的每一个节点文件,都是同步加载,加载完成一个后再加载另一个,这也就是进度条的实现方法。 加载完成后的文件就已经开始运行了,模版是最后加载的,所以也就是说当主程序加载完成之后才开始加载模版文件。 加载模版的过程其实也和主程序差不多,从jPushConfig.xml文件下的config节点读取模版路径。其他的配置路径也都是有用的,稍后在说。 接下来我们看下模版的配置文件,这个有点罗嗦,其实仔细看一目了然。 page节点下的都是文件路径,script节点很明显也是一些JS文件,同样是同步加载。在加载的同时CSS和模版文件,也就是style节点和node节点下的两个文件同时加载进主页。随后当这些文件都加载完毕的时候就剩下最后一个步骤了,那就是加载桌面背景,之所以把大图片放到加载过中是因为在没加载完成前页面实在是有点难看,所以就这么做了。 至此,整个程序的运行大过程就已经结束了。 我们可以看到进度条的实现方法其实是很简单的。我的程序进度条分为3个步骤。这个我们可以从入口文件index.html最上面看到,有个loadingData对象,loadingData对象下面还有3个对象,这就是加载的3个步骤。我们来从头顺一下。 首先加载程序主文件,这是第一个步骤,占进度条的33%; 然后加载模版文件和模版文件的在执行过程。这俩占66%; 好了,程序的执行过程都完毕了,现在你就可以添加程序的后端,或者用我的主文件加载其他你自己写的模版了。带进度条的哦~亲。 饿。。。刚才在吃饭。 还有一个忘了,就是jPushConfig.xml下的config的节点都是干嘛的。 key值为jQueryExtendUi的他是所有模版下JQUERY扩展程序的UI文件部分。里面的弹出层,滚动条,还有右键菜单等控件的UI都在这里,有兴趣的可以自己试着改一下,改成属于自己的弹出层也说不定哦~这些控件就不细说了,等下几篇文章在详说。 然后是key值为defaultTemplated的,不用说,肯定是模版的配置文件了,所以如果哪位亲想改模版就直接改下这个文件的路径就可以了。 在下面几个都是ASPX的后端程序文件了,之所以我没改是因为这些都是连接后端的API,你可以改成自己的后端程序,不管是PHP,ASP还是.NET或者JSP。都可以,因为这套程序强调的就是,跨平台,程序的可移植性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值