前段时间转行android开发,为了学习做了个即时通话的项目,可以两个人直接通话,使用tcp传送数据。
    主要是为了学习android基础知识,所以做的比较简单,语音通话的降噪和回音消除都没有做。有兴趣的朋友可以继续做下去,建议用rtp实现语音传输,同时用一些开源库降噪如speex。项目中包含了自定义控件,socket通讯,线程通讯,线程同步方面的知识。
    找到工作后比较忙,不打算继续做下去了,后面有空再写下项目的总结,上传上来主要是为了分享下,让有需要的人可以参考下。如果有人看了我的项目有认为有什么地方需要改进的,欢迎提出。降噪和回音消除就不用说了,因为这两个都是难点,一般也就只能用网上的开源库实现,目前没时间去做。
    想要下载源码的同学可以去下面的网址下载。http://download.csdn.net/detail/caizhegnhao/7665867

    2015-01-10
    后面项目要用到发表情的功能,在找参考项目是发现了一个更好的项目,不但有聊天还有表情文字,而且服务器做得比我这个好,建议大家用这个。
    http://blog.csdn.net/jiangliloveyou/article/details/9849775  2015-01-31最近公司要做即时通讯的项目了,很后悔当初没有继续花时间研究下比较流行的即时通讯协议,如果研究过我就可以承担服务端方面的工作了,因为领导很忙,如果我能提供一个不错的解决方案他们肯定会让我服务端客户端一起做了的。机会总是个有准备的人的。这次之后要尽快研究一个流行的通讯协议,现在即时通讯(或者消息推送)很多项目都需要做,特别是移动互联网兴起以来。不多说了,在网上搜索了一天了解了好几个开源项目框架后得出以下结论1、xmpp比较重型,如果用于移动客户端开发,会比较占资源,且网络不稳定时表现比较差,但比较成熟,国内资料相对较多,而且有一个很成熟的开源的解决方案了,那就是Openfire,自己百度下,这方面的资料挺充足的。2、mqtt比较轻型,适用于客户端开发,且资源占用没那么多,这个东西是ibm用来做医疗设备监控的,可以说是为嵌入式系统准备的。但是国内的资料很少,要做好被英语蹂躏的准备。最后权衡再三我还是确定使用mqtt协议的开源项目来研究,按  这个博文    以及  这个博文 基本配好了环境,这个方案的主要思路是参考eclipsepaho这个开源项目做客户端,用Apollo作为项目的服务端,apollo的源码可以去官网下载,用svn连接的。apollo配置时要多参考官网的教程,是全英文的,注意apollo的项目和安装包不要放到中文目录下会出找不到路径的问题。
   暂时写到这里,我认为apollo+eclipsepaho做即时聊天是个不错的解决方案,而且都开源,就是国内资料少些。后面研究得差不多了,再补全博文。

android即时通讯研究(逐渐完善中,还很简单)相关推荐

  1. Android 即时通讯开发小结(二)

    <Android 即时通讯开发小结>基于IM Andriod 开发的各种常见问题,结合网易云信即时通讯技术的实践,对 IM 开发做一个全面的总结. 相关推荐阅读:. Android即时通讯 ...

  2. Android 即时通讯开发小结(一)

    本文将基于 IM Andriod 开发的各种常见问题,结合网易云信即时通讯技术的实践,对 IM 开发做一个全面的总结. 客户端架构 作为一个 IM 软件,最重要的一个特性就是保证消息的达到率和实时性. ...

  3. Android即时通讯和sns开源项目汇总

    这是一个整理即时通讯(IM)和社交系统(SNS)优秀开源项目的文档,项目上传github欢迎提交更新. 一 即时通讯和社交系统平台 1 环信(推荐) 2 阿里百川 云旺 3 融云 4 OpenSNS ...

  4. android 即时通讯 心跳

    前言:现在的大多数移动端应用都有实时得到消息的能力,简单来说,有发送消息的主动权和接受消息的被动权.例如:微信,QQ,天气预报等等,相信好处和用户体验相信大家都知道吧. 提出问题:这种功能必须涉及cl ...

  5. Android 即时通讯开发

    Android 即时连天工具的开发 客户端,开三个线程,thread1监听接收消息,用udp,thread2定时向服务器发送在线消息,用tcp,thread3每隔一段时间检查发送的消息的时间是否超时( ...

  6. 浅析即时通讯开发实时通信技术中的视频编解码

    RTC(Real-time Communications),实时通信,是一个正在兴起的风口行业,经过短短一年的时间,已经有很多玩家进入了这个行业,最典型的应用就是直播连麦和实时音视频通信.但是,很多开 ...

  7. Android即时通讯开发总结

    移动端IM实现方案 第三方平台 比如环信,融云,leancloud,容联云.网易云信等等.直接使用sdk就可以实现了,最简单最直接,而且稳定性已经不错了,连UI界面都带有了,可以自行修改,缺点是要收费 ...

  8. 【即时通讯】一个完善的即时通讯模块具备哪些功能?

    一个完善的即时通讯模块需要具备哪些功能? 前言 前提需求,目前一个系统,由于产品需求,需要在系统中实现用户之间的即时通讯.那么,这个即时通讯的子系统,需要实现哪些功能呢? 功能列表 单人对单人实时聊天 ...

  9. iOS和Android即时通讯开发时后台实时消息推送的原理和区别

    iOS和Android上的实时消息推送差异很大,往小了说是技术实现的差异,往大了说是系统实现理念的不同.实时消息推送在移动端互联网时代很平常,也很重要,它的存在让智能终端真正成为全时信息传播的工具.本 ...

最新文章

  1. 抓住青春的尾巴再愤青一把
  2. 免费报名 | 微软全双工语音对话以及在智能硬件上的应用
  3. Entity Framework 4.1/4.3 之五 (DBContext 之 2 查询功能)
  4. 2-Tenor AF AFT400-实战-Lync Server 2010-集成-2012-01-19
  5. Android 8.0 Oreo 形为变更之 Notification Channels
  6. 自定义注解事务课程回顾
  7. 渗透测试神器CS(4.0)的使用
  8. 华为Mate X海报曝光:设计惊艳 可变形
  9. C++11 Lambda表达式
  10. javascript多重继承
  11. memcached php封装类,PHP Memcached + APC + 文件缓存封装_PHP - key
  12. 微信小程序转盘实现(真心话大冒险)
  13. 很棒的VC界面库 - GuiToolkit
  14. Unity VideoPlayer 播放视频
  15. mongodb意外断电,非正常关闭, 造成不可启动, 日志出现WT_ERROR: non-specific WiredTiger error, terminating
  16. 如何查看计算机是否支持64位操作系统,如何查看计算机是32位还是64位操作系统?...
  17. W3C官网查找资源教程
  18. 我选择了IT,我会用最大的热诚进军IT大技术!
  19. 在控制面板找不到程序的情况下,卸载流氓软件
  20. 网上做什么挣钱?7个能赚钱的项目,个个都能发财!

热门文章

  1. nodemon : 无法加载文件 C:\Users\Administrator\AppData\Roaming\npm\nodemon.ps1因为在此系统上禁止运行脚本。
  2. slaveof directive not allowed in cluster mode
  3. 纯css 下滑线导航条特效
  4. php -r phpinfo,phpinfo的知识点总结
  5. 程序员日入斗金第一步:跳过英语障碍
  6. 边双连通和点双连通(连通性)
  7. 残基接触图 (Residue Contact Map)
  8. 为什么每个程序员都必须写博客
  9. c# 拒绝访问 进程_c# - 无法复制文件,拒绝访问路径
  10. GreenDao Currently only single FK columns are supported: ToOne ‘dpObjectsDB‘