我尝试使用 AndroidAsync 库。这是一个代码示例:
AsyncHttpClient.getDefaultInstance()
.websocket(url, null, new AsyncHttpClient.WebSocketConnectCallback() {
@Override
public void onCompleted(Exception ex, WebSocket webSocket) {
Log.i(LOG_TAG, "onCompleted");
if (ex != null) {
Log.e(LOG_TAG, "ex != null");
Log.e(LOG_TAG, ex.toString());
ex.printStackTrace();
return;
}
if (webSocket == null) {
Log.e(LOG_TAG, "1 webSocket == null");
} else {
Log.w(LOG_TAG, "1 webSocket != null");
}
webSocket.setStringCallback(new WebSocket.StringCallback() {
public void onStringAvailable(String s) {
Log.i(LOG_TAG, "setStringCallback");
System.out.println("I got a string: " + s);
}
});'
在我的情况下,ex == null 但 webSocket == null。nullpointerexception 在库代码中被捕获。但是我可以使用这个插座吗?即使回调中没有异常,它也是 null 看起来很奇怪。