最近分析webrtc android 的交互流程(房间服务器、信令、穿透等),发现webrtc是使用的是autohahn 的 websocket,初步看了下发现这个库封装的很不错,就分享出来,下面的 内容是来自网上。。
Autobahn Android是一个开源的网络类库用于Java/Android应用。实现了 The WebSocket Protocol 和The WebSocket Application Messaging Protocol (WAMP)协议。
特性:- 支持WebSocket RFC6455, Draft Hybi-10+ 和WAMP v1
- 适用于 Android 2.2+
- 很好的符合标准
- 高性能异步设计
- 易于使用的API
- 与Android UI应用程序无缝集成
- no (really none) network activity on UI thread
- Open-source (Apache 2 license)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
WebSocket Echo Client
private
final
WebSocketConnection mConnection =
new
WebSocketConnection();
private
void
start() {
final
String wsuri =
"ws://localhost:9000"
;
try
{
mConnection.connect(wsuri,
new
WebSocketHandler() {
@Override
public
void
onOpen() {
Log.d(TAG,
"Status: Connected to "
+ wsuri);
mConnection.sendTextMessage(
"Hello, world!"
);
}
@Override
public
void
onTextMessage(String payload) {
Log.d(TAG,
"Got echo: "
+ payload);
}
@Override
public
void
onClose(
int
code, String reason) {
Log.d(TAG,
"Connection lost."
);
}
});
}
catch
(WebSocketException e) {
Log.d(TAG, e.toString());
}
}
|
来自:http://www.open-open.com/lib/view/open1371353685109.html