- 浏览: 184963 次
- 性别:
- 来自: 浙江
文章分类
最新评论
使用第三方jar: autobahn-0.5.0.jar
连接代码如下:
public void connect() {
mWebSocketConnection = new WebSocketConnection();
try {
mWebSocketConnection.connect(Url.URL_WEB_SOCKET, new WebSocketHandler() {
@Override
public void onOpen() {
Log.e(TAP,"onOpen");
isConnect = true;
}
@Override
public void onClose(int code, String reason) {
Log.e(TAP,"onClose");
isConnect = false;
}
@Override
public void onTextMessage(String payload) {
Log.e(TAP,"onTextMessage:"+payload);
if(isConnect){
//接受返回数据
}
}
});
}catch (Exception e){
e.printStackTrace();
}
}
此方法调用默认连接设置,WebSocketOptions:
public WebSocketOptions() {
this.mMaxFramePayloadSize = 131072;
this.mMaxMessagePayloadSize = 131072;
this.mReceiveTextMessagesRaw = false;
this.mTcpNoDelay = true;
this.mSocketReceiveTimeout = 200;
this.mSocketConnectTimeout = 6000;
this.mValidateIncomingUtf8 = true;
this.mMaskClientFrames = true;
}
如需更改超时时间,可在connect方法中追加参数,将自定义WebSocketOptions类传入,代码如下:
WebSocketOptions mWebSocketOptions = new WebSocketOptions ();
mWebSocketOptions.setSocketConnectTimeout(5000);
mWebSocketOptions.setSocketReceiveTimeout(1000);
连接代码如下:
public void connect() {
mWebSocketConnection = new WebSocketConnection();
try {
mWebSocketConnection.connect(Url.URL_WEB_SOCKET, new WebSocketHandler() {
@Override
public void onOpen() {
Log.e(TAP,"onOpen");
isConnect = true;
}
@Override
public void onClose(int code, String reason) {
Log.e(TAP,"onClose");
isConnect = false;
}
@Override
public void onTextMessage(String payload) {
Log.e(TAP,"onTextMessage:"+payload);
if(isConnect){
//接受返回数据
}
}
});
}catch (Exception e){
e.printStackTrace();
}
}
此方法调用默认连接设置,WebSocketOptions:
public WebSocketOptions() {
this.mMaxFramePayloadSize = 131072;
this.mMaxMessagePayloadSize = 131072;
this.mReceiveTextMessagesRaw = false;
this.mTcpNoDelay = true;
this.mSocketReceiveTimeout = 200;
this.mSocketConnectTimeout = 6000;
this.mValidateIncomingUtf8 = true;
this.mMaskClientFrames = true;
}
如需更改超时时间,可在connect方法中追加参数,将自定义WebSocketOptions类传入,代码如下:
WebSocketOptions mWebSocketOptions = new WebSocketOptions ();
mWebSocketOptions.setSocketConnectTimeout(5000);
mWebSocketOptions.setSocketReceiveTimeout(1000);
- autobahn-0.5.0.jar (52.4 KB)
- 下载次数: 2
发表评论
-
Comparator自定义排序的使用
2017-05-11 14:18 748java对于集合的自定义排序方法有: Arrays.sort ... -
查看Android虚拟机文件相关命令
2017-05-02 14:12 593我们在虚拟机下添加文件后,想查看下文件是否正确创建,可在win ... -
android6.0创建文件问题
2017-05-02 12:58 586Android在6.0有了动态权限管理,在文件创建时就需要动态 ... -
xutils的http模块的简单使用
2017-04-28 16:05 522先导入xutils相关依赖: compile 'org.xut ... -
Litepal的简单使用
2017-04-27 17:21 639相关包下载地址:https://github.com/Lite ... -
Android下拉刷新上拉加载控件的使用
2017-04-21 10:46 850参考链接:http://www.jianshu.com/p/6 ... -
图片加载框架
2017-04-19 16:29 402图片加载框架: picasso ImageLoader -
Android的Service总结
2017-04-17 15:46 458参考链接:http://www.cnblogs.com/lwb ... -
解决ViewPager的addOnPageChangeListener不加载第一个的问题
2017-03-18 17:53 2641今天在使用ViewPager的时候发现个问题。 需求如下: ... -
clone方法的使用
2017-01-04 10:14 552由于Java有引用这一说,当两个变量指向同一块内存时,改变 ... -
Fragment无法切换问题
2016-12-16 14:57 2112Android有一个回收机制,当内存不足时,会自动回收相关内存 ... -
关于Material Design的CollapsingToolbarLayout初次使用
2016-12-16 13:38 611最近了解了下CollapsingToolbarLayout的使 ... -
MVP模式的学习
2016-12-10 15:15 669以前我写代码都是使用MVC模式,这种模式使Activity变得 ... -
Material Design:Android Design Support Library 介绍
2016-12-10 14:14 468参考链接 : https://blog.leancloud.c ... -
SpannableString简介
2016-12-10 14:03 423参考链接: http://www.cnblogs.com/ji ... -
getResources().getDrawable方法的废弃
2016-12-10 13:20 1222参考链接:http://www.jianshu.com/p/e ... -
关于AndroidStudio的Unsupported major.minor version 52.0异常
2016-12-10 13:15 2376参考链接:http://blog.csdn.net/fakin ... -
Android记录
2015-06-01 10:54 638http://tools.android-studio.org ... -
android自定义控件相关使用
2015-04-24 16:53 610用代码简单介绍下自定义控件的使用: 先看主activity: ... -
android使用html标签
2015-03-13 20:42 707有些时候我们需要在一个textview上,对部分字体进行特殊效 ...
相关推荐
【Android WebSocket】Android 端 WebSocket 基本用法 ( 添加依赖和权限 | 创建 WebSocketClient 客户端类 | 建立连接并发送消息 ) https://hanshuliang.blog.csdn.net/article/details/123628775 博客配套源码
这里我们以OkHttp-WebSocket-Client为例,因为它与OkHttp结合紧密,使用起来相对简单。 2. **集成WebSocket库**: - 将库添加到项目的build.gradle文件中,例如: ```groovy implementation '...
3. `Android-WebSocket`: 这是一个专门为Android设计的WebSocket库,简单易用。 三、使用OkHttp-WebSocket实现WebSocket 以下是一个使用OkHttp实现WebSocket的基本步骤: 1. 引入依赖:在`build.gradle`文件中添加...
总结,Android应用中实现WebSocket连接有两种主要途径:一是借助第三方库,如OkHttp和Android-WebSocket,它们提供了简单易用的API;二是利用原生的HTTP/2 API,这需要对WebSocket协议有深入理解。开发者应根据项目...
在Android平台上,WebSocket的使用为移动应用提供了丰富的实时功能,例如在线聊天、游戏同步、股票行情更新等。本实例将带你深入理解Android中的WebSocket开发。 首先,我们要了解WebSocket协议的基础。WebSocket...
在Android应用中,你可以使用多种库来实现WebSocket通信。例如,`org.java_websocket`是一个流行的Java WebSocket库,适用于Android平台。下面是一个简单的使用示例: 1. 添加依赖:在你的`build.gradle`文件中,...
本教程将介绍如何在Android应用中简单使用Java WebSocket。 首先,理解WebSocket的核心概念:WebSocket是一种在TCP层面上建立长连接的协议,不同于HTTP的一次性请求-响应模型。它提供了全双工通信信道,允许数据在...
本文将深入探讨如何在Android上实现简单的WebSocket长连接,包括连接的建立、异常处理以及回调机制。 首先,我们需要引入WebSocket的相关库。一个常见的选择是`okhttp-ws`,它是OkHttp扩展的一个库,支持WebSocket...
在Android平台上,使用WebSocket可以实现高效、实时的数据推送,这对于开发实时聊天应用、游戏、股票交易等需要实时更新信息的应用非常有用。 首先,要理解WebSocket的基础概念。WebSocket协议基于TCP,它通过...
本实例将围绕如何在Android端使用WebSocket进行详细讲解。 首先,我们要了解WebSocket的基本概念。WebSocket是HTML5的一个新特性,它通过一个单独的TCP连接提供全双工通信,相比于HTTP协议的每次请求-响应模式,...
在Android中,我们可以使用java.net.WebSocket API或者第三方库(如OkHttp+WebSocket)来实现WebSocket通信。WebSocket连接的建立过程包括握手(发送Upgrade请求)、连接保持以及数据传输。 在SocketDemo项目中,...
可以使用Android的ConnectivityManager监听网络状态变化,一旦网络恢复,就重新建立WebSocket连接。 对于数据回调,我们已经在`onMessage`方法中实现了对接收到的消息的处理。可以根据业务需求将这些消息分发到不同...
接下来,我们将深入探讨如何在Android上实现WebSocket长链接,以及如何使用StompProtocolAndroid库来简化这一过程。 首先,我们需要了解WebSocket的基本原理。WebSocket协议基于TCP/IP,通过握手协议在客户端和...
本文主要介绍了 Android 使用 WebSocket 实现聊天室的相关知识点,包括 WebSocket 的基本概念、Android 中使用 WebSocket 的库 Autobahn|Android、WebSocket 的特点、使用 WebSocket 实现聊天室的步骤等。...
总的来说,Android上的WebSocket通信主要依赖于像Java-WebSocket这样的库,它们提供了客户端接口,使得在Android应用中实现WebSocket连接和通信变得简单。结合`WebSocketUtils.java`这样的辅助类,开发者可以更加...
在Android中实现WebSocket,我们可以使用库如`org.java-websocket:Java-WebSocket`或`okhttp-ws`。以下是一个简单的步骤概述: 1. **添加依赖**:在项目的build.gradle文件中添加对应的库依赖。例如,如果使用`org....
以下是一个简单的WebSocket服务器端代码示例: ```java import javax.websocket.OnClose; import javax.websocket.OnMessage; import javax.websocket.OnOpen; import javax.websocket.Session; import javax....
【标题】:“Uniapp使用GoEasy实现websocket实时通讯” 【描述】:本文主要探讨了如何在Uniapp项目中集成GoEasy服务,以实现基于websocket的实时通讯功能。Uniapp作为一个跨平台的开发框架,允许开发者编写一次代码...
以下是一个使用OkHttp-WebSocket库的简单示例: ```java OkHttpClient client = new OkHttpClient.Builder() .addInterceptor(new Interceptor() { // 添加自定义的HTTP拦截器,例如进行身份验证 }) .build(); ...