1

내 Google Glass 및 Android 휴대 전화가 Android 컴퓨터에서 내 Google Glass로 메시지를 보낼 수 있도록 내 컴퓨터에서 실행중인 NodeJs 서버에 연결하려고합니다.Google Glass의 Socket.io 클라이언트

koush의 AndroidAsync 라이브러리를 사용하여 내 안드로이드 폰에서 잘 작동하며이 라이브러리가있는 NodeJS 서버에 내 핸드폰을 연결하는 데 전혀 문제가 없습니다.

그러나 Google Glass에서 동일한 코드가 작동하지 않는 것 같습니다. NodeE 서버의 연결 이벤트 처리기가 실행 되었기 때문에 My Google Glass DOES가 연결됩니다. Google Glass에서 ConnectCallback 기능을 트리거하지 않는 것 같습니다. 여기

은 임 내 구글 유리 응용 프로그램에서 사용하는 코드입니다 : 당신이 볼 수 있듯이

SocketIOClient.connect(AsyncHttpClient.getDefaultInstance(), "http://192.168.1.229:5000", new ConnectCallback() { 
    @Override 
    public void onConnectCompleted(Exception ex, SocketIOClient client) { 
     Log.i("SOCKET", "CONNECTION COMPLETED"); 
     if (ex != null) { 
      ex.printStackTrace(); 
      return; 
     } 

     client.setStringCallback(new StringCallback() { 
      @Override 
      public void onString(String string, Acknowledge acknowledge) { 
       Log.d("SOCKET", string); 
      } 
     }); 

     client.setJSONCallback(new JSONCallback() { 
      @Override 
      public void onJSON(JSONObject jsonObject, Acknowledge acknowledge) { 
       Log.d("SOCKET", jsonObject.toString()); 
      } 
     }); 

     client.on("event", new EventCallback() { 
      @Override 
      public void onEvent(JSONArray jsonArray, Acknowledge acknowledge) { 
       Log.i("DATA: ", jsonArray.toString()); 
       Gson gson = new Gson(); 
      } 
     }); 
     mClient = client; 
    } 
}); 

}

는, 임은 "onConnectCompleted"기능에 "COMPLETED 연결"로그인을 시도하지만, 결코 발사되지 않으며 아무것도 기록되지 않습니다.

내 안드로이드 폰에서 동일한 코드가 작동하고이 코드가 실행되면 "CONNECTION COMPLETED"가 로깅되므로 이상하게 느껴집니다. 가장 이상한 점은 내 Glass가 연결될 때 서버에서 on 연결 이벤트가 발생하면 노드 서버가 실제로 Google Glass를 선택한다는 것입니다.

내 Google Glass가 분명히 내 NodeJS 서버에 연결되어 있지만 연결될 때 어떤 이벤트도 발생시키지 않는 이유는 누구나 쉽게 찾을 수 있습니다. (ConnectCallback 기능을 트리거하지 않으면 "CONNECTION COMPLETED"가 기록되지 않습니다)? 사전에

감사합니다,

브람 내가 여기에 같은 문제에 직면하고 내 유리 내 와이파이 네트워크에 연결되었다 보여 있지만 발견 된

+0

Glass가 Wi-Fi 네트워크에 직접 연결되어 있는지 또는 휴대 전화의 블루투스 연결을 통과하는지 명시 할 수 있습니까? – Alain

+0

그것은 wifi를 통해 직접 연결되어 있지만 잘못된 점을 파악할 수있었습니다. 어떤 이유로 ADT 설치가 로그를 표시하지 않았지만 몇 번 다시 시작한 후 작동합니다! – Brambo48

+0

가능한 복제본 AndroidAsync Socket.IO : Google Glass에서 ConnectCallback()이 실행되지 않는 것 같습니다.] (http://stackoverflow.com/questions/26370624/koush-androidasync-socket-io-looks-like-connectcallback- 트리거되지 않음) –

답변

1

, 그것은 사실이 아니었다. 나는 adb shell netcfg을 시도했는데 놀랍게도 wlan0 인터페이스에는 할당 된 IP가 없었습니다. 다시 Wi-Fi 네트워크에 연결했는데 모두 정상적으로 작동하기 시작했습니다.

이상한 점은 비록 내가 어떤 종류의 오류가 기록 될 것으로 예상했기 때문입니다 (비록 내가 다른 Socket.IO client을 사용하고 있었음에도 불구하고). 나는 그 사건이 만료되지 않은 타임 아웃 (연결/소켓 타임 아웃)이라고 믿고 있기 때문에 여전히 연결을 시도하고 있었고 우리가 로그 엔트리를 볼 시간에 실패하지 않았다. 나는이 라이브러리들이 기본적으로 상대적으로 높은 연결 시간 제한을 설정했기 때문에 많은 초가 지나기 전에 오류를 보지 않을 것이라고 생각한다.