合肥程序员群:49313181。    合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入)
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端框架概述的更多相关文章

  1. 即时聊天IM之一 XMPP协议简述

    合肥程序员群:49313181.    合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q  Q:408365330     E-Mail:egojit@qq.com  综述: ...

  2. 基于XMPP协议的手机多方多端即时通讯方案

    一.开发背景 1.国际背景 随着Internet技术的高速发展,即时通信已经成为一种广泛使用的通信方式.1996年Mirabilis公司推出了世界上第一个即时通信系统ICQ,不到10年间,即时通信(I ...

  3. 7.xmpp版即时聊天

    即时聊天的解决方案 socket: xmpp:xmpp+openfire+asmack 环信 常见协议 比较安全,tcp上还加了俩层 简单聊一下socket socket:套接字,连接需要ip和端口, ...

  4. 基于XMPP协议的Android即时通信系

    以前做过一个基于XMPP协议的聊天社交软件,总结了一下.发出来. 设计基于开源的XMPP即时通信协议,采用C/S体系结构,通过GPRS无线网络用TCP协议连接到服务器,以架设开源的Openfn'e服务 ...

  5. 即时聊天 / XMPP

    MQTT是第二个即时聊天协议(了解) 5.即时通讯 即时通讯网上有第三方的解决方案,比如环信,融云等.我们是自己搭的xmpp服务器,服务器使用的tigase,之前写过相关的博客,自己去年也做了对应的w ...

  6. (转)基于即时通信和LBS技术的位置感知服务(二):XMPP协议总结以及开源解决方案

    在<基于即时通信和LBS技术的位置感知服务(一):提出问题及解决方案>一文中,提到尝试使用XMPP协议来实现即时通信.本文将对XMPP协议框架以及相关的C/S架构进行介绍,协议的底层实现不 ...

  7. 即时通信系统Openfire分析之一:Openfire与XMPP协议

     引言 目前互联网产品使用的即时通信协议有这几种:即时信息和空间协议(IMPP).空间和即时信息协议(PRIM).针对即时通讯和空间平衡扩充的进程开始协议SIP(SIMPLE)以及XMPP.PRIM与 ...

  8. iOS:XMPP即时聊天知识

    XMPP即时聊天框架:XMPPFramework   XMPP The Extensible Messaging and Presence Protocol(可扩展通讯和表示协议). 基于XML XM ...

  9. .net平台 基于 XMPP协议的即时消息服务端简单实现

    .net平台 基于 XMPP协议的即时消息服务端简单实现 昨天抽空学习了一下XMPP,在网上找了好久,中文的资料太少了所以做这个简单的例子,今天才完成.公司也正在准备开发基于XMPP协议的即时通讯工具 ...

随机推荐

  1. module not exists: xxxx Error in ThinkPHP

    Introduction ThinkPHP is a very charming PHP framework to easily build a website. It's structured in ...

  2. 马士兵Java视频教程 —— 学习顺序

    第一部分:J2se学习视频内容包括: 尚学堂科技_马士兵_JAVA视频教程_JDK5.0_下载-安装-配置 尚学堂科技_马士兵_JAVA视频教程_J2SE_5.0_第01章_JAVA简介_源代码_及重 ...

  3. IE8 jquery解析xml的兼容问题

    正常情况下可以这么写: jQuery(node).find(xpath.replace("//", ""))[0]; 但是在IE8下得到的是undefined应 ...

  4. Android 网络开发之WIFI

    WIFI就是一种无线联网技术,常见的是使用无线路由器.那么在这个无线路由器的信号覆盖的范围内都可以采用WIFI连接的方式进行联网.如果无线路由器连接了一个ADSL线路或其他的联网线路,则又被称为&qu ...

  5. SQL Server 取日期时间部分

    在本文中,GetDate()获得的日期由两部分组成,分别是今天的日期和当时的时间: Select GetDate() 用DateName()就可以获得相应的年.月.日,然后再把它们连接起来就可以了: ...

  6. [翻译]lithium 安装

    安装 要求 web服务器 你需要一个web服务器来运行你的应用,最好是可以运行在你的本地机器上(你所有的开发不是都在这上面做的吗,不是吗?不是吗?).对于PHP而言,框架在很多web服务器上都运行的很 ...

  7. 深入了解try catch

    @Test public void testWeiXin(){ System.out.println(task()); } private boolean task(){ try { int i = ...

  8. SQL-Server使用点滴(一)

    前言 SQL的语法比较简单,学起来相比界面UI控制要简单得多,但是SQL在企业级应用中又是如此的重要,以至于很多开发人员都把重点放在SQL上. SQL并没有面向对象的概念,最复杂的设计也不过是表值函数 ...

  9. Java开发中经典的小实例-(打印输入重复的值)

    import java.util.ArrayList;import java.util.Scanner;public class Test8 {    public static void main( ...

  10. 怎样设置域名带www和不带www都可以访问

    1,域名解析添加两条A记录 2,IIS域名绑定添加两个主机头