仿微信基本功能。

基于XMPPserver的即时通信以及交友client。

----第一期代码的功能例如以下---- 



    1.新用户注冊 



    2.登陆并连接XMPPserver 握手 保持在线 



    2.查找最新注冊用户:(下拉刷新 上拉翻页。做的比較匆忙,没操作提示) 



    3.点击某个用户就可以对他发送消息(聊天记录下一期更新) 



    4.首页显示收到的和发送的全部消息(排序和分组下一期更新) 



    ----第二期更新内容---- 



    1.修复了注冊延时时间,加入了切换账号功能,修复了输入框适配问题 



    2.微信页面和聊天页面界面已基本重做 。首页消息按联系人分组按时间逆序显示。聊天气泡有待优化,收发消息所有採用 NSNotifaction 不用操心消息发了页面不刷新。自己主动滚到最新一条。

键盘监听效果更加友好,採用TableViewInset来错位。 



    3.加入好友功能,加入完后能够在好友列表查看到,若是在是注冊的太早要翻非常久,或者新注冊用户刷新不出来,能够通过webview直接加入,可是需到控制台查看互相的ID 



    4.User对象和Message对象採用FMDB+类java的Dao模式用静态方法固化,而且有个开发人员自己写的对象to字典、字典to对象的两个超好用的方法,大家值得一看!

5.删除了XMPPManager单例中的一些废话和临时用不着的内容。加入了非常多凝视。大家能够细细品读。

----第三期更新内容---- 



    1. 增加离线图片的发送接收支持; 



    2. 优化了输入框。并以自己定义输入面板的形式实现了shareMore(分享很多其它); 



    3. 发送图片的两种模式均以实现 ,通过http上传至server再转发URL(已凝视掉),通过base64码直接编码图片再解码,均支持离线收发。 



    因为作者没有做屏幕适配,所以请在Retina 4-inch模拟器或者iPhone5中执行代码。 



    ----第四期代码的功能例如以下---- 



    1. 修复绝大部分bug 



    2. ios7体验更佳 



    3. 图片/文字畅聊不闪退 



    4. 支持按昵称模糊搜索。找到朋友更easy 



    5. 修复了域名丢失引起的连接失败问题,如今server24小时确保能连接 



    6. 更准确的提示信息。更好的用户体验 



    PS: 1~3期的用户数据已清除,如需尝试请又一次注冊 



     



    作者说:这次给大家带来的demo我已经写好了server端,也配置好了openfireserver,大家假设想执行的话先确定server是否开启(APIport8080,openfireport5225)。ping一下 www.hcios.com 假设未开启请QQ,一般开启时间为9:00~18:00



    预计网上再也找不到比我写的这个更好的XMPP Demo了,上传此demo的目的为给很多其它的朋友了解即时通讯技术,在您看的爽的同一时候,请同意我要求您不要用此demo以商业用途传播 ,谢谢。

源代码下载:http://code.662p.com/view/5849.html

<ignore_js_op> 

<ignore_js_op> 

<ignore_js_op>

具体说明:http://ios.662p.com/thread-1073-1-1.html

仿ios版微信应用源代码的更多相关文章

  1. 仿PC版微信的练手项目(可实时通讯)

    仿PC版微信的DEMO 本项目是由一个仿PC版微信的vue前端项目,和一个使用leancloud进行数据存储的.提供WebSocket的node后端项目构成. 本项目使用的技术栈:vue + vue- ...

  2. 腾讯微信被怼,iOS版微信不能打赏了

    2017年4月19日,估计很多有着大量粉丝的微信自媒体作者会感到很不爽,因为他们的苹果粉丝再也无法很爽快地.肆意.任性地打赏他们了,按目前iphone手机的占有率,估计打赏率会掉一半以上. 据微信派微 ...

  3. iOS版微信6.5.21发布 适配iPhone X

    昨日,iOS版微信迎来v6.5.21正式版发布,本次升级主要适配iPhone X,在聊天中查找聊天内容时,可以查找交易消息.可以给聊天中的消息设置日期提醒.上一个正式版v6.5.16发布于9月13日, ...

  4. 微信团队分享:iOS版微信的高性能通用key-value组件技术实践

    本文来自微信开发团队guoling的技术分享. 1.前言 本文要分享的是iOS版微信内部正在推广和使用的一个高性能通用key-value 组件的技术实践过程,该组件在微信内部被命名为MMKV(以下简称 ...

  5. 微信团队分享:iOS版微信是如何防止特殊字符导致的炸群、APP崩溃的?

    本文来自微信开发团队yanyang的技术分享. 1.引言 相信大家都遇到过一段特殊文本可以让iOS设备所有app闪退的经历.前段时间大年初一,又出现某个印度语字符引起iOS11系统奔溃,所幸iOS版微 ...

  6. 微信团队原创分享:iOS版微信的内存监控系统技术实践

    本文来自微信开发团队yangyang的技术分享. 一.前言 FOOM(Foreground Out Of Memory),是指App在前台因消耗内存过多引起系统强杀.对用户而言,表现跟crash一样. ...

  7. 微信团队分享:极致优化,iOS版微信编译速度3倍提升的实践总结

    1.引言 岁月真是个养猪场,这几年,人胖了,微信代码也翻了. 记得 14 年转岗来微信时,用自己笔记本编译微信工程才十来分钟.如今用公司配的 17 年款 27-inch iMac 编译要接近半小时:偶 ...

  8. 解决alert在ios版微信中显示url的问题(重写alert)

    为了解决alert在ios版微信中显示url的问题 window.alert = function(name){ var iframe = document.createElement("I ...

  9. react-native自定义Modal模态框|仿ios、微信弹窗RN版

    前序 纵观每个优质项目,无论web端还是native原生应用开发,弹窗都是不可忽视的一环,能很大程度上直接决定用户体验.如:微信.支付宝.ios都有很成熟的一套弹窗UI展示场景. 最近一直沉迷在rea ...

随机推荐

  1. iOS开发中xib和Storyboard中需要注意的事项

    使用xib注意事项: 1.只有自带view的控件才可以使用xib,因为它本身就是一个view 2.在使用可视化控件添加属性(代码)时候,如果删除了属性代码,一定要在xib上解除关联(不然会崩溃) 3. ...

  2. 设置Ubuntu 10.10版本的软件源

    设置Ubuntu 10.10版本的软件源 http://blog.csdn.net/xie1xiao1jun/article/details/49911189   网上有很多关于软件源信息的更新,每次 ...

  3. [置顶] java的foreach循环

    foreach语句是java5之后的新特征之一,在循环遍历数组.集合方面更加简洁. 使用foreach循环遍历数组和集合时,无需获得数组和集合的长度,无须根据索引来访问数组元素和集合元素,foreac ...

  4. MUI 列表页面绑定接口数据

    1.我们先看效果 2.功能分析 主要分为3步 数据初始化 下拉刷新 上拉加载 接口数据示例: { "List": [ { "Id": 9, "Orde ...

  5. JVM调优总结(八)-典型配置举例2

    常见配置汇总 堆设置 -Xms:初始堆大小 -Xmx:最大堆大小 -XX:NewSize=n:设置年轻代大小 -XX:NewRatio=n:设置年轻代和年老代的比值.如:为3,表示年轻代与年老代比值为 ...

  6. ACM一些题目

    Low Power 先二分答案,可以通过调整证明同一台机器选的两个芯片必然是提供能量数值相邻的两个.所以再贪心一下就可以了. 时间复杂度\(O(n \log n)\). Factors 假设\(k\) ...

  7. poj 1182食物链(并查集)

    算法思路:把那些确定了相对关系的节点放在同一棵树里(可以同时存在多棵树,单独每棵树中节点的相对关系确定),每个节点对应的 v[] 值记录他与根节点的关系( 0:同类: 1:根吃他: 2:他吃根 ).当 ...

  8. openstack ovs-gre 网速慢解决方案

    Hint: if you want to check if this answer will solve your issue, execute ifconfig eth0 mtu 1400 on t ...

  9. attachEvent与addEventlistener兼容性

    关于原生事件绑定中attachEvent与addEventlistener中兼容性以及attachEvent函数中this指代window有关问题   请点击下面回答中的"采纳为答案&quo ...

  10. TraceView总结

    一.TraceView简单介绍 TraceView是AndroidSDK里面自带的工具,用于对Android的应用程序以及Framework层的代码进行性能分析. TraceView是图形化的工具,终 ...