Smack 广播】的更多相关文章

格式 Message message = new Message("all@broadcast.192.168.1.253"); 使用openfire的广播功能首先需要在插件的页面里安装broadcast,然后通过Smack就可以发送广播了.…
http://blog.csdn.net/shimiso/article/details/8816540 关于Smack编程库,前面我们提到,它是面向Java端的api,主要在PC上使用,利用它我们可以向openfire服务器注册用户,发送消息,并且可以通过监听器获得此用户的应答消息,以及构建聊天室,分组,个人通讯录等等. 下面我们写几个程序小例子测试一下. (1)登录操作 PPConnection.DEBUG_ENABLED = true; AccountManager accountMana…
Openfire开发广播服务接口,支持离线广播消息 概要 最近公司要求做一个web端向所有移动端发送公告,所以考虑到即时性就用openfire做服务.不过为了减轻web端的工作量,我们开发一个简单的插件给openfire,对外开放http接口即可. 准备 系统环境:window10(surface pro4) JDK:1.7 or later 开发工具:eclipse-Mars.2 Release (4.5.2) Openfire版本:4.0.3 内容 Web端发送公告有两个方案: 1.web端…
XmpPullParser 鉴于xmpp协议都是以xml格式来传输,因此源码中解析协议都是用到XmpPullParser来解析xml XmpPullParser很简单,先简单介绍几个比较常用的方法 //定义一个事件采用回调方式,直到xml完毕 public int getEventType() throws XmlPullParserException : //遍历下一个事件,返回一个事件类型 public int next() throws XmlPullParserException, IO…
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina.com Openfire XMPP Smack RTC IM 即时通讯 聊天 MD 目录 目录简介Openfire 简介相关的几个名词SmackSparkJIDXMPPOpenfire 安装配置Stanza 节共同属性Presence 在线状态Message 传递消息IQ 请求响应测试代码conn…
package cn.zsmy.utils.openfire; import java.io.BufferedReader; import java.io.InputStreamReader; import java.net.URL; import java.net.URLConnection; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator; import java.util.…
前言 Java领域的即时通信的解决方案可以考虑openfire+spark+smack.当然也有其他的选择. Openfire 是基于Jabber协议(XMPP)实现的即时通信服务器端版本,目前建议使用3.8.1版本,这个版本是当前最新的版本,而且网上可以找到下载的源代码. 即时通信客户端可使用spark2.6.3,这个版本是目前最新的release版本,经过测试发现上一版本在视频支持,msn网关支持上可能有问题,所以选择openfire3.8.1+spark2.6.3是最合适的选择. Smac…
http://www.tuicool.com/articles/U3Afiy 使用Smack编程库进行代码功能调试 关于Smack编程库,前面我们提到,它是面向Java端的api,主要在PC上使用,利用它我们可以 向openfire服务器注册用户,发送消息,并且可以通过监听器获得此用户的应答消息,以及构建聊天室,分组,个人通讯录等等. 下面我们写几个程序小例子测试一下. (1)登录操作 PPConnection.DEBUG_ENABLED = true; AccountManager accou…
Smack Extensions用户手册 XMPP协议包括基本协议和许多可选扩展,通常记录为“XEP”.Smack为核心XMPP协议提供了org.jivesoftware.smack包,为许多协议扩展提供了org.jivesoftware.smackx包. 本手册提供了有关每个“smackx”扩展的详细信息,包括它是什么,如何使用它,以及一些简单的示例代码. 目前支持Smack的XEP(所有子项目) 名称 XEP 版 描述 Nonzas XEP-0360 N / A 定义术语“Nonza”,描述…
功能实现:注册,登录,单聊表情,文本,图片,语音的发送接收,添加好友,删除好友,查找好友,修改密码,消息提醒设置,获取离线消息等功能 1.前期准备 1.下载opnefire软件:https://www.igniterealtime.org/downloads/index.jsp 2.下载一款数据库软件:mysql 4.在AS中添加smack相关依赖包: compile 'org.igniterealtime.smack:smack-android-extensions:4.1.4' compil…
现实中:电台要发布消息,通过广播把消息广播出去,使用收音机,就可以收听广播,得知这条消息.Android中:系统在运行过程中,会产生许多事件,那么某些事件产生时,比如:电量改变.收发短信.拨打电话.屏幕解锁.开机,系统会发送广播. 只要应用程序接收到这条广播,就知道系统发生了相应的事件,从而执行相应的代码.使用广播接收者,就可以收听广播. 系统中任何应用只要注册了对应了Receiver,就会接收到此Broadcast. ###创建广播接收者1. 定义java类继承BroadcastReceive…
在即时通信这个领域目前只找到一个XMPP协议,在其协议基础上还是有许多成熟的产品,而且是开源的.所以还是想在这个领域多多了解一下. XMPP协议:具体的概念我就不写了,毕竟这东西网上到处是.简单的说就是基于XML的一种协议.其解决了什么问题呢?就是给即时通讯制定了标准,大家只要遵守标准就可以完成即时通信的功能.有了标准的好处就是可以有各种不同的实现,大家在这个标准上发展自己的特长.而且还给即时通信提供了互联互通的基础.XMPP协议据网上说还是比较优秀的,表现就是google等大公司都在自己的即时…
一.前言 学习了前面的活动与服务后,你会发现服务对于活动而言似乎就是透明的,相反活动对于服务也是透明的,所以我们还需要一中机制能够将服务和活动之间架起一座桥梁,通过本节的学习,你将会学到广播与绑定服务,这两种方式恰恰是解决上面问题的关键. 二.简单的广播接收器 实现一个最简单的广播接收器需要继承BroadcastReceiver类,并且还要实现OnReceive方法,我们可以在项目中新建一个MainReceiver类,然后写入如下代码: public class MainReceiver : B…
CC2541一拖多例程中RSSI获得是通过一个事件回调函数实现的,前提是需要连接上蓝牙设备. 这个对于多点定位来说是不可行的,由于主机搜索蓝牙设备过程中也能获得当前蓝牙设备的RSSI等信息,因此可基于广播实现定位及数据传输. 基于广播的数据传输是从beacon中学到的思想. 基于广播的RSSI获得方法具体如下: 在一拖多工程中的主机代码的simpleBLECentral.c的simpleBLECentralEventCB中: 打开原来被注释掉的1021-1023行,可以在搜索到设备时显示设备地址…
docker的安装见官方文档 我使用的系统为Ubuntu16.04 Ubuntu系统安装docker文档地址:https://docs.docker.com/engine/installation/linux/ubuntulinux/ Ubuntu的版本必须和文档中提到的要一致 ----------------------------------------------------------------- 1.查找相关的Ubuntu镜像 可以去docker镜像官网:https://hub.do…
我们知道,对于UDP协议的通信,除了可以用来聊天外,可以发送广播数据.只要向广播地址的某个端口发送数据就可以进行广播,子网中只要监听该端口的socket就能收到广播消息. 最简单的方法就是向255.255.255.255发送消息,这样就可以在本地网络中广播了,由于路由器不转发对该地址所发送的内容,所以只能用于本地网络.但这已经够用了,至少连接到同一个路由器的设备都能收到消息. 下面,咱们就来演示一下,如何进行广播. 先看接收端的实现. RT库API提供了一个名为DatagramSocket的类,…
我用的是Fragment , 发送写在一个类中,接收写在另外一个类的内部类中.代码动态实现注册. 代码: myReceiver = new zcd.netanything.MyCar.myReceiver(); IntentFilter filter = new IntentFilter(); //向过滤器中添加action filter.addAction("zcd.netanything"); //注册广播 getActivity().registerReceiver(myRece…
一.使用BroadcastRceiver 1.创建BroadcastRceiver(MyRceiver),重写OnReceiver: public void onReceive(Context context, Intent intent) { System.out.println("接收到了消息,消息内容是:"+intent.getStringExtra("data")); } 2.在主布局添加一个按钮: <Button android:text="…
一.代码实例 回到第IOC的第七章context部分,我们看源码分析部分,可以看到在spring的bean加载之后的第二个重要的bean为applicationEventMulticaster,从字面上我们知道它是一个事件广播器.在第8和9部分,详细描述了广播器的初始化: 1.查找是否有name为applicationEventMulticaster的bean,如果有放到容器里,如果没有,初始化一个系统默认的放入容器 2.查找手动设置的applicationListeners,添加到applic…
smack 4.1.1版本对群聊修改了很多,MultUserChat的构造函数修改成了私有,以前通过new MultUserChat创建聊天室,现在通过MultUserChatMananger先通过roomId初始化一个聊天室. String roomId = "test003"; String name="test_group_chat"; String desc = "the test group chat"; String nick=&qu…
在Android中,有一些操作完成以后,会发送广播,比如说发出一条短信,或打出一个电话,如果某个程序接收了这个广播,就会做相应的处理.这个广播跟我们传统意义中的电台广播有些相似之处.之所以叫做广播,就是因为它只负责“说”而不管你“听不听”,也就是不管你接收方如何处理.另外,广播可以被不只一个应用程序所接收,当然也可能不被任何应用程序所接收. 一.Android广播机制三要素: 1.广播(Broadcast):用于发送广播.是一种广泛应用的在应用间传输信息的机制 2.广播接收器(Broadcast…
昨天讲了Openfire的搭建和配置,今天来讲一下Smack.如果对如何搭建和配置Openfire的,可以参考Openfire/XMPP学习之——Openfire的安装.配置. Smack是一个开源,易于使用的XMPP客户端类库.Smack API, 是一个 Java 的XMPP Client Library,也是由Jive Software开发. 优点:编程简单. 缺点:API并非为大量并发用户设计,每个客户要1个线程,占用资源大,1台机器只能模拟有限(数千个)客户.Smack是一个用 jav…
前言 Android四大组件重要性已经不言而喻了,今天谈谈的是Android中的广播机制.在我们上学的时候,每个班级的教室里都会装有一个喇叭,这些喇叭都是接入到学校的广播室的,一旦有什么重要的通知,就会播放一条广播来告知全校的师生.类似的工作机制其实在计算机领域也有很广泛的应用,如果你了解网络通信原理应该会知道,在一个 IP 网络范围中最大的 IP 地址是被保留作为广播地址来使用的.比如某个网络的 IP 范围是 192.168.0.XXX,子网掩码是 255.255.255.0,那么这个网络的广…
1.Service (1)含义:Service是在后台长时间运行的应用组件,所在线程是main线程. (2)使用方式:startService能够执行onStartCommand中操作,bindService能够将Service的实例对象返回给Activity,从而能够在Activity中使用Service的方法.而用new方法创建Service对象,没有报错,但无法成功调用Service的方法. (3)注意:在onStartCommand中,老师建议我们将返回值改为START_NOT_STIC…
getsockopt()/setsockopt() //获得sockfd指向的socket的属性 int getsockopt(int sockfd, int level, int optname, void *optval, socklen_t *optlen); //设置sockfd指向的socket的属性,成功返回0,失败返回-1设errno. int setsockopt(int sockfd, int level, int optname, const void *optval, so…
//Fragment public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); System.out.println("oncreate"); //代码 注册 广播接收器 Receiver=new myReceiver(); IntentFilter filter=new IntentFilter(); filter.addAction("zcd.voicerob…
0.Android 中的广播主要可以分为两种类型,标准广播和有序广播.标准广播(Normal broadcasts)是一种完全异步执行的广播,在广播发出之后,所有的 广播接收器几乎都会在同一时刻接收到这条广播消息, 有序广播(Ordered broadcasts)则是一种同步执行的广播,在广播发出之后,同一时刻 只会有一个广播接收器能够收到这条广播消息. 1.监听系统广播(电量/wifi/时区变化...) 如果需要监听系统广播,需要两步: (1)重写BroadcastReceiver中的onRe…
只能动态注册的广播(部分): android.intent.action.SCREEN_ON android.intent.action.SCREEN_OFF android.intent.action.BATTERY_CHANGED android.intent.action.CONFIGURATION_CHANGED android.intent.action.TIME_TICK 原因: 有以下几种说法,提供给大家参考: 1.提高系统效率:这两个事件是android的基本事件,如果大多数程序…
这篇东西原写在csdn.net上,最近新开通了博客想把零散在各处的都转移到一处.   一.源起 学WCF有一段时间了,可是无论是微软的WebCast还是其他网上的教程,亦或我购买的几本书中,都没有怎么提到服务器端事件的订阅.(后来购买的一本WCF服务编程中提供了关于订阅和发布的例子) 网上也查了很多,但大部分都没有清楚地讲到这部分内容,有的虽然是讲这部分内容,但也是语焉不详.最重要的部分都没有讲到(也许是因为水平太差,看不懂).而且网上和书上所用的语言都是C#,这让人很恼火,虽然我能使用C#,但…
一,动态创建网络状态监控 思路: 1:需要注册一个广播接收者,registerReceiver()需要两个参数 public Intent registerReceiver( BroadcastReceiver receiver, IntentFilter filter) {//接收者,过滤器(需要接收的内容) return mBase.registerReceiver(receiver, filter); } 2:参数一,接收者.新建一个NetworkChanceReceiver内部类,继承于…