目录
基于Android系统的XMPP即时通讯技术项目实战
Android系统在手机和其他的系统的应用已经非常广泛,基于Android的软件开发迅速成为软件开发中的重要的领域。未来Android平台的应用将更加广泛,相应的软件研发的需求也会越来越多,这也就意味着未来这个领域需要更多的人参与进来。
即时通讯技术是 网络技术中的明珠。即时通讯产品改变了人们的生活习惯。经过十几年的发展,即时通讯功能的应用也逐渐从专门软件才能实现的功能逐渐成为标准配置。即时通讯技术的应用不仅仅只是用于社交领域,在大多的协同工作领域,以及需要分布结构的网络通讯领域都是非常重要的。
讲师本人在android领域有多年的开发经验,在即时通讯系统方面也有深入的研究。在本课程中,详细讲解了android开发中要解决的一些主要的问题,即时通讯在客户端实现的过程,并手把手的进行操作,方便学习和理解。因为课时的原因,对于一些初级的问题没有做出详细解释。所以本课程适用于有一定的软件开发基础的学员。
1.课程研发环境
开发工具:Eclipse (mars 64位 for Java developer) ;
Android SDK:版本(6.0)
软件运行平台:Android模拟器(6.0),天天模拟器(4.3)
服务器配置:
数据库工具:SqlServer2005
操作系统:window 2003 Server
HTTP服务器:IIS 6.0
开发语言:ASP
2.内容简介
本教程从即时通讯的基本概念讲起,一步步把即时通讯的体系架构和所用到的知识(在Android客户端部分)逐渐铺开,形成一个从概括到细节的一个整体架构。每个细节又细化成为具体的代码,变成一个可以实现的整体结构。
本教程讲述了四个方面的内容:
1.和即时通讯相关的网络技术和协议,包括HTTP协议、TCP/IP协议,XMPP协议,对于需要用的技术详细的进行了讲解和实现。
2.客户端软件设计和开发的思路和实践,包括设计模式、架构的分析和设计。
3.Android客户端实现需要具备的基础知识和技能,包括网络访问,图像缓存等,已经Android客户端的开发流程。
4.关于大规模即时通讯系统所涉及到的知识的概括。
通过本课程,可以帮助学员理解即时通讯系统的架构,并且可以一步步实现一个简单结构的即时通讯系统。
15年软件公司研发工作经历,1年知名软件培训机构专职讲师经历。对于教学相关的软件系统,嵌入式系统开发有很多的实践。主持过多个基于Android平台的学习系统。以及多个市级科研项目。目前主要专注于Android等移动平台的技术研究和教学工作。
第一讲: Android技术及其应用
第二讲:即时通讯技术的发展和应用
第三讲:XML语言、XMPP在即时通讯中的应用
第四讲:即时通讯的系统架构
第五讲:微信及其实现
第六讲:服务器的搭建
第七讲:服务器的配置
第八讲:服务器接口的定义说明
第九讲:Android客户端开发环境的配
第十讲:项目搭建和配置
第十一讲:XUtils的引用和使用方法
第十二讲:项目架构和MVC模型
第十三讲:实体类的设计方法
第十四讲:用户类的设计和单例模式
第十五讲:联系人类的定义
第十六讲:通讯录类的定义
第十七讲:通讯录和SQLite数据库
第十八讲:会话信息的设计
第十九讲: Socket的使用和UDP服务器
第二十讲: Http协议和数据访问
第二十一讲:实体类的数据访问实现
第二十二讲: Image Cache
第二十三讲:项目中用到的控件,自定义控件的设计要点
第二十四讲:圆形头像的实现
第二十五讲:输入控制的设计
第二十六讲:图像的显示
第二十七讲:声音的显示和播放
第二十八讲:视频的缩略显示和播放
第二十九讲:会话列表的封装
第三十讲:联系人列表的封装
第三十一讲:照相机的使用
第三十二讲:声音的录制
第三十三讲:项目架构的搭建
第三十四讲:用户注册功能的实现
第三十五讲:用户登录功能的实现
第三十六讲:用户信息管理的实现
第三十七讲:通讯录的实现
第三十八讲:发现功能的实现
第三十九讲:会话的实现
第四十讲:数据的发送和接收
第四十一讲:发布软件
第四十二讲:超大规模的即时通讯的设计要点
目标一. 了解Android体系及其结构
目标二. 了解Android开发中的关键技术,并能够熟练应用
目标三. 掌握网络编程的基本要点,了解即时通讯的架构及其实现的路径
目标四. 掌握软件体系的架构设计,能够快速的构件软件应用系统
目标五. 掌握自定义控件的设计要点,能够自己构架各种控件
目标六. 掌握单例模式及其应用的场景
亮点一、即时通讯是一个非常关键的技术,它是多种软件技术和网络技术的综合,对即时通讯的研究是对个人软件技术能力的考验.本课程通过实际操作,一步步实现一个即时通讯的实现,是一个非常好的从理论到实践的过程。
亮点二、理论与实战相结合,由浅入深。即照顾到基础学员,又照顾到有一定经验的学员,讲解过程中留有学生思考的时间.
亮点三、课程绝大多数代码均是一行一行手工敲入,手把手一步步带领学员从入门到精通.
亮点四、由于课时的限制,并没有全部的代码演示,但对每一个部分都已经详细的讲到,按照本项目所讲的内容进行扩充,就可以应用到自己的项目中,实践性强.
1.课程针对人群
本课程主要针对具有一些Android开发基础,对于Android有一些编程经验,希望能够对网络技术和即时通讯技术深入研究的学员。
2.我该怎么学,如何才能学好这门课程,给些建议。
2.1、时间上的安排建议
本课程共42讲,但具体的课程的时间并不一致,建议每次针对一个技术点进行学习,一步步向前推进,每天完成一到两个知识点即可。
2.2、学习要求
对于已经熟悉的技术点,只要不会对后面的代码的理解造成困扰,可以掠过。主要是要理解设计和编码的思路,并能够自己运用。
2.3、讲师建议
1.先完视频之后,抛开视频,独立自己去把上课中的示例写一遍,看自己是否理解,如果不正确,可以回过头看再看下视频,如果反复,达到真正理解和熟练掌握的目的。
2.对于项目实战部分,一定要自己亲自动手做一遍,不要满足听完就OK了
3. 建议一般听视频,一般拿个纸和笔,做一些记录和笔记,这是一种非常好的学习习惯。
4. 一定不要过于依赖视频,要学会看API和使用百度,学会思考,学会举一反三
5. 最后祝您学有所成
课程是属于某个特定的专业技术,掌握该技术后,你可以从事以下职位的相关工作
Android开发工程师