2013-09-06 2 views
0

로컬 Java 서버 및 서버에 연결하는 Android 애플리케이션을 수행하려고합니다. 조금 검색 한 결과 연결을 생성하기 위해 WebSocket을 사용할 수 있다는 것을 알았지 만 rmi 레지스트리에 대해 아무 것도 찾지 못했습니다. 나는 그것을 사용하려고하지만 난이 일을 얻을 수 없습니다, 그래서 내가 웹 소켓을 사용했고,이 코드Android 애플리케이션의 클라이언트 서버

>    int port=2111;  
>    try { 
>    ServerSocket servSock; 
>    servSock = new ServerSocket(port); 
>    System.out.println("[+] Server ready."); 
>    
>    while(true) 
>    { 
>     //Assigns a new thread to any client connected 
>     Socket socket = servSock.accept(); 
>     new MySocketServer(socket).start(); 
>    } 
>   
>    }catch (IOException e) { 
>     e.printStackTrace();} 

은 안드로이드 애플리케이션을위한 RMI 같은 것을 너무 있는가, 아니면 내가 연결을위한 웹 소켓을 사용해야합니다? 도와 줘서 고마워.

+0

KryoNet이라는 라이브러리를 살펴 보시기 바랍니다. 나는 전에 사용했고 그것은 굉장합니다. https://code.google.com/p/kryonet/#Remote_Method_Invocation – Budius

답변

0

약간의 네트워크 배경 연구가 필요합니다. 전송 패키지에 TCP 또는 UDP를 사용할 수 있습니다. TCP에 비해 SOCKET을 사용하고 UDP에 대해서는 DATAGRAM을 사용하는 것이 TCP보다 훨씬 빠르지 만 연결 지향은 적습니다.

Android 측에서 네트워크 통신을위한 스레딩을 사용하면 UI 스레드 차단 오류가 발생합니다.

는 예를 들어, 자바의 많은 거기에 구글 검색/UDP 인조 TCP/서버 - 클라이언트 예를

0

또한 긴 연결을 구현하기 위해 HTTP 프로토콜을 사용할 수 있습니다. 또한. parse, stackMob과 같은 많은 MBaaS 플랫폼이 있습니다. 이러한 플랫폼은 많은 공개 API를 제공하며 직접 이러한 API를 호출 할 수 있습니다.

0

Netty 프레임 워크 (http://netty.io)를 사용해보십시오. 나는 모든 클라이언트 - 프로그래밍에 많은 것을 사용했다. Netty는 서버 쪽에서 좋습니다. 안드로이드의 경우 서버에서 푸시 알림을 요청하지 않으면 HttpClient를 사용합니다. 푸시 알림이 필요하면 https://code.google.com/p/android-random/ (KeepAliveService)을 방문하십시오. 좋은 시작입니다.

관련 문제