Android 기술 Q&A 
Q&A 게시판에 질문을 남기신 글에 대한 답변/덧글/쪽글에 대한 Push 메일 서비스를 받고자 하시는 분들은
☞ Push 메일 서비스 공지를 필독하시기 바랍니다.
소캣 프로그래밍 질문입니다.
작성자
작성일 2008-10-22 (수) 02:34
ㆍ추천: 0  ㆍ조회: 10385      
IP: 211.xxx.231
다이렉트로 연결된 두대의 컴퓨터가 있습니다.
 
하나는 자바로 된 서버와 안드로이드로 작성한 클라이언트가 있습니다.
 
자바로 된 서버에 안드로이드가 접속을 해서 메세지를 보내는거죠.
 
=자바서버코드=
 
import java.io.BufferedReader;  
import java.io.InputStreamReader;  
import java.net.ServerSocket;  
import java.net.Socket;  
 
public class TCPDesktopServer implements Runnable{  
    public static final int SERVERPORT = 4444;  
    public static final String SERVERIP = "169.254.58.95";  
      
    public void run() {  
        try {  
            System.out.println("S: Connecting...");  
            ServerSocket serverSocket = new ServerSocket(SERVERPORT);  
 
            while (true) {  
                Socket client = serverSocket.accept();  
                System.out.println("S: Receiving...");  
 
                try {  
                    BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));  
                    String str = in.readLine();  
                    System.out.println("S: Received: '" + str + "'");  
                } catch(Exception e) {  
                    System.out.println("S: Error");  
                    e.printStackTrace();  
                } finally {  
                    client.close();  
                    System.out.println("S: Done.");  
                }  
            }  
 
        } catch (Exception e) {  
            System.out.println("S: Error");  
            e.printStackTrace();  
        }  
    }  
 
    public static void main (String a[]) {  
        Thread desktopServerThread = new Thread(new TCPDesktopServer());  
        desktopServerThread.start();  
    }  

 
 
=안드로이드코드=
 
  1. package android.SocketTest;   
  2.   
  3. import java.io.BufferedWriter;   
  4. import java.io.OutputStreamWriter;   
  5. import java.io.PrintWriter;   
  6. import java.net.InetAddress;   
  7. import java.net.Socket;   
  8.   
  9. import android.TCPDesktopServer.TCPDesktopServer;   
  10. import android.util.Log;   
  11.   
  12. public class TCPClient implements Runnable {   
  13.     public void run() {   
  14.          try {   
  15.               
  16.              InetAddress serverAddr = InetAddress.getByName(TCPDesktopServer.SERVERIP);   
  17.         
  18.              Log.d("TCP""C: Connecting...");   
  19.              Socket socket = new Socket(serverAddr, 4444);   
  20.                 
  21.              String message = "Hello from Client";   
  22.              try {   
  23.                  Log.d("TCP""C: Sending: '" + message + "'");   
  24.                  PrintWriter out = new PrintWriter( new BufferedWriter( new OutputStreamWriter(socket.getOutputStream())),true);   
  25.                     
  26.                  out.println(message);   
  27.                  Log.d("TCP""C: Sent.");   
  28.                  Log.d("TCP""C: Done.");   
  29.                     
  30.              } catch(Exception e) {   
  31.                  Log.e("TCP""S: Error", e);   
  32.               } finally {   
  33.                 socket.close();   
  34.               }   
  35.          } catch (Exception e) {   
  36.               Log.e("TCP""C: Error", e);   
  37.          }   
  38.     }   
  39. }  

방화벽을 해제하고 아래와 같이 텔넷으로 서버로 메시지가 보내지는 건 확인했습니다

 

S: Connecting...
S: Receiving...
S: Received: 'sss'
S: Done.
 

하지만 안드로이드가 서버로 접속하여 메세지를 보내지 못하고 있습니다.


 

서버 콘솔에서는 C: Connecting...만 뜨고 아무런 메세지가 나오지 않습니다.


 

운영체제는 비스타구요.


 

도움을 좀 주시면 감사하겠습니다.

이름아이콘 회색
2008-10-22 23:05
`` 님이 선택한 글 입니다.
AndoridManifest.xml에서 <uses-permission android:name="android.permission.INTERNET" /> 확인해보시기 바랍니다.
   
이름아이콘 PREDATOR
2008-10-24 20:01
해보니깐 되네요. 회색님 정말 감사드립니다.
   
 
덧글 쓰기 0
3500
※ 회원등급 레벨 0 이상 읽기가 가능한 게시판입니다.
    N     분류     제목    글쓴이 작성일 조회
4903 안드로이드에서 실행되었던 프로그램 지우는법 좀 알려주세요.. 2008-06-20 9315
4902 Openembedded 사용법 아시는분 계신가요? 2008-06-20 9086
4901 Re..OpenEmbedded 관련 발표자료입니다. 2008-06-20 14629
4900 SDK 에뮬상에서 바탕화면관련 질문 입니다. 2008-06-23 8471
4899 port redirection에 대한 질문입니다. 2008-06-23 14340
4898 socket통신 질문이요~~ 2008-06-23 11246
4897 [To:후니~] TCP Soc Server sample 2008-06-23 8364
4896 MediaPlayer 질문 2008-06-26 8817
4895 여러분, 혹시 m3버전의 sdk를 가지고 있으세요? 2008-06-27 8431
4894 타 application 연동 관련 2008-06-28 8224
4893 인베인님 에뮬에서 돌아가는 바이너리 만들기??.. 2008-07-02 8253
4892 안드로이드 포팅보드 선택(헬프~~) 2008-07-04 9227
4891 부팅 시간이 궁금해서 질문 올립니다. 2008-07-09 8347
4890 android에서 지원 되는 코어가 궁금합니다. 2008-07-10 8062
4889 음성녹음 2008-07-22 9276
4888 에뮬레이터에서 JNI 가능한가요? 2008-07-29 9222
4887 android 와 awt, swing 2008-08-05 11262
4886 좀 무식한 질문입니다 2008-08-05 8007
4885 회색님,들풀님 이거 좀 해결해주세요. 2008-08-15 8009
4884 안드로이드 포팅 메모리 최소용량 ? 2008-08-18 11101
4883 0.9_beta 버젼에서 sdcard에 파일 저장하기에 대해서 궁금합니.. 2008-08-21 10629
4882 포팅에 관한 질문드립니다 2008-08-26 8031
4881 i.mx31ads - android 실행중 error 문제 입니다. 2008-08-27 11531
4880 음성레코딩 소스 좀 부탁 드립니다. 2008-09-01 8346
4879 안드로이드에 3d 모델 로딩 2008-09-08 10752
4878 안드로이드? 구글 폰? 2008-09-09 8384
4877 UI 구성에 대해서 여쭤봅니다. 2008-09-16 8180
4876 기본적인 mapViewer 를 이용한 코드인데요 2008-09-17 10267
4875 안드로이드 emulator에 GPS 사용 안되나요? 2008-09-18 10628
4874 soap client 구현을 위한 개념좀 설명해주세요~ 2008-09-20 11930
4873 안드로이드 init 에러 2008-09-22 10225
4872 AIDL 관련 질문입니다. 2008-09-28 9981
4871 0.9beta버전 기본적으로 있는 프로그램에 대해 여쭤봅니다... 2008-09-30 8112
4870 밑에 질문에 이어 비슷한 질문 하나 더 드립니다... 2008-10-01 8346
4869 custom Attributes 문의 2008-10-06 8886
4868 SD카드 파일 복사 관련 질문입니다,,, 2008-10-06 11224
4867 [질문] android touch Calibration 2008-10-09 10396
4866 m5버전 이클립스 ADT 구할수없을까요? ㅠ_ㅠ 2008-10-10 8735
4865 비디오 플레이어를 만들고 있는데.. 조언 좀.. 2008-10-12 9338
4864 초보적인 질문좀 하나좀. 2008-10-14 8387
4863 질문좀 드려도 될까?? 2008-10-14 8328
4862 에뮬레이터의 스킨에 대해서.. 2008-10-14 8576
4861 LCD 관련 질문 2008-10-18 8232
4860 안드로이드 플렛폼 관련 질문 2008-10-20 8395
4859 에물레이터에서 이미지 추출할때 2008-10-20 8452
4858 Re..에물레이터에서 이미지 추출할때 2008-10-20 8611
4857 소캣 프로그래밍 질문입니다. 2008-10-22 10385
4856 포팅시 key 관련 사항 2008-10-22 8590
4855 Android Eror 문의 2008-10-22 9601
4854 에뮬레이터 리셋 방법은 없나요? 2008-10-24 11501
12345678910,,,101