WebSocket是一种通过TCP的双向通信协议。WebSocket在客户端和服务器之间提供了一个持久的连接。这意味着他们双方可以在任何时候发送数据。
回声客户端连接到回声服务器并发送数据。回声服务器从客户端接收数据并将其发送回来。
使用 Java 的 WebSocket 回声客户端
nv-websocket-client
在模块的文件中添加依赖项build.gradle
:
应用程序/build.gradle
dependencies {
implementation 'com.neovisionaries:nv-websocket-client:2.10'
}
INTERNET
在清单文件中添加权限:
app/src/main/AndroidManifest.xml
<uses-permission android:name="android.permission.INTERNET" />
- WebSocket 回显客户端:
app/src/main/java/com/example/app/MainActivity.java
package com.example.app;
import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import com.neovisionaries.ws.client.WebSocket;
import com.neovisionaries.ws.client.WebSocketAdapter;
import com.neovisionaries.ws.client.WebSocketFactory;
import java.io.IOException;
import java.util.List;
import java.util.Map;
public class MainActivity extends AppCompatActivity
{
private WebSocket ws;
@Override
protected void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebSocketFactory wsFactory = new WebSocketFactory();
try {
ws = wsFactory.createSocket("wss://echo.websocket.org");
ws.addListener(new WebSocketAdapter() {
@Override
public void onConnected(WebSocket ws, Map<String, List<String>> headers) {
Log.d("MY_APP", "Connected");
ws.sendText("Hello");
}
@Override
public void onTextMessage(WebSocket ws, String text) {
Log.d("MY_APP", "Message received: " + text);
}
});
ws.connectAsynchronously();
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
protected void onDestroy()
{
ws.disconnect();
super.onDestroy();
}
}
版权声明:本文内容转自互联网,本文观点仅代表作者本人。本站仅提供信息存储空间服务,所有权归原作者所有。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至1393616908@qq.com 举报,一经查实,本站将立刻删除。