即时聊天IM之三 XMPP协议客户端库的和Android端框架概述
Q Q:408365330 E-Mail:egojit@qq.com
smack介绍:
上一篇我介绍了服务端openfire整合现有系统用户,当服务器整合并且搭建完成后,需要做的工作就是写客户端聊天工具了。要么基于pc要么基于移动(Android和IOS)。所以这一篇我们一起学习一下smack库,smack是用java写的开源客户端XMPP (Jabber)库,在老版本中smack是不支持android的,写android应用需要aSmack库,但是自从Smack 4.1.0-alpha1版本以后支持Andorid本地运行了,而且现在版本已经到4.2alpha了,让后原有aSmack库已经停止维护更新,所以意味着smack将会在移动端也会替换掉aSmack。当然我们后续的学习也是基于Android平台学习这个java 库。总的来说Smack是java写的实现了XMPP (Jabber)协议的开源代码库,支持pc和移动开发。我们对它的学习也能大大的提升我们对XMPP协议的能力。同时能在我们开发的APP中嵌入即时聊天(IM)功能。
Android Material Design 介绍:
因为后面都是基于Android平台来讲XMPP客户端库开发详情,并且最终要做一个小的APP出来,所以最初我们就做好技术和设计选型,Android就基于Android Material Design设计讲解,顺便和大家一起熟悉这个google新推出的设计语言标准。首先大家看看下图有一个直观给了解

以上是一个直观的界面效果,是不是比较简洁。而且它是一套标准,我们可以在。然后再看看Android Material Design交互效果,点击开始下面视频
虽然google官方从android5.0才正式支持Android Material Design设计。但是现在有很多开源项目以及support7支持库提供了支持。后面如果大家感兴趣我也可以写一个教程如何实现Android Material Design标准的控件,这里就不介绍了,这里主要是利用它配合Smack去实现一个小的IM客户端,让我们很好的学习XMPP客户端库Smack。这种效果,大家看完是不是觉得很赞呢。
好了,下一篇我们开始在Smack基础上去写帮助类。以及基于Android Material Design整合的开发框架我后面会在Github上面放出来。
关于Android Material Design设计标准和更多资料你可以看中文版 http://wiki.jikexueyuan.com/project/material-design/
即时聊天IM之三 XMPP协议客户端库的和Android端框架概述的更多相关文章
- 即时聊天IM之一 XMPP协议简述
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: ...
- 基于XMPP协议的手机多方多端即时通讯方案
一.开发背景 1.国际背景 随着Internet技术的高速发展,即时通信已经成为一种广泛使用的通信方式.1996年Mirabilis公司推出了世界上第一个即时通信系统ICQ,不到10年间,即时通信(I ...
- 7.xmpp版即时聊天
即时聊天的解决方案 socket: xmpp:xmpp+openfire+asmack 环信 常见协议 比较安全,tcp上还加了俩层 简单聊一下socket socket:套接字,连接需要ip和端口, ...
- 基于XMPP协议的Android即时通信系
以前做过一个基于XMPP协议的聊天社交软件,总结了一下.发出来. 设计基于开源的XMPP即时通信协议,采用C/S体系结构,通过GPRS无线网络用TCP协议连接到服务器,以架设开源的Openfn'e服务 ...
- 即时聊天 / XMPP
MQTT是第二个即时聊天协议(了解) 5.即时通讯 即时通讯网上有第三方的解决方案,比如环信,融云等.我们是自己搭的xmpp服务器,服务器使用的tigase,之前写过相关的博客,自己去年也做了对应的w ...
- (转)基于即时通信和LBS技术的位置感知服务(二):XMPP协议总结以及开源解决方案
在<基于即时通信和LBS技术的位置感知服务(一):提出问题及解决方案>一文中,提到尝试使用XMPP协议来实现即时通信.本文将对XMPP协议框架以及相关的C/S架构进行介绍,协议的底层实现不 ...
- 即时通信系统Openfire分析之一:Openfire与XMPP协议
引言 目前互联网产品使用的即时通信协议有这几种:即时信息和空间协议(IMPP).空间和即时信息协议(PRIM).针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)以及XMPP.PRIM与 ...
- iOS:XMPP即时聊天知识
XMPP即时聊天框架:XMPPFramework XMPP The Extensible Messaging and Presence Protocol(可扩展通讯和表示协议). 基于XML XM ...
- .net平台 基于 XMPP协议的即时消息服务端简单实现
.net平台 基于 XMPP协议的即时消息服务端简单实现 昨天抽空学习了一下XMPP,在网上找了好久,中文的资料太少了所以做这个简单的例子,今天才完成.公司也正在准备开发基于XMPP协议的即时通讯工具 ...
随机推荐
- MD5 Checksums for R12.1.1 Rapid Install Media (文档 ID 802195.1)
Oracle EBusiness Suite R12.1.x Rapid Installmd5 Checksums November 2011 Section 1: Overview Sec ...
- python字符串方法的简单使用
学习python字符串方法的使用,对书中列举的每种方法都做一个试用,将结果记录,方便以后查询. (1) s.capitalize() ;功能:返回字符串的的副本,并将首字母大写.使用如下: >& ...
- IOS UITableview代理方法总结
tableview的datasource代理 @required的两个数据源方法 1.返回每个 session 中 cell 的个数 - (NSInteger)tableView:(UITableVi ...
- 在SpringMVC框架下实现文件的 上传和 下载
在eclipse中的javaEE环境下:导入必要的架包 web.xml的配置文件: <?xml version="1.0" encoding="UTF-8" ...
- XML序列化
1.先创建资产文件assets AssetManager am=getAssts(); 2.获得文件字节输入流 InputStrem is=am.open("weather"); ...
- CSS2中基本属性的介绍
这是继上一篇的选择器的总结,对css2基本属性的小结!
- linux vmware安装完成后如何设置桥接上网
linux 主机初步安装完成后还是不能上网,如何设置共享上网 1 首先要明白上网方式:虚拟机网卡-------------------vmnet1--------------------真实机网卡( ...
- 进军Linux
大二的时候学习Java,学完Java SE之后就放弃了这条道路,踏上了嵌入式之路.那时候约定好,选择了DSP,从C2000开始学起,基础仅仅是会C51,有C语言和Java的基础.这几年随着项目的需求变 ...
- PetGenie
大概六.七年前当我还在学 Asphyre 的时候,有看过一个以之编写的类似对对碰的“宠物对对碰”小游戏,虽然很简单,但我当时还是小小的沉溺过数个小时.而不久前,在闲逛论坛时无意看到了个以 FireMo ...
- window7 x64 path
%SystemRoot%\system32; %SystemRoot%; %SystemRoot%\System32\Wbem; %SYSTEMROOT%\System32\WindowsPowerS ...