2013-11-21 2 views
-2

저는 Android가 처음이고 Stackoverflow를 처음 사용합니다!HttpResponse/httpClient.execute에서 오류가 발생했습니다.

나는 단지 http 연결을 배우기 위해 더미 응용 프로그램을 만들고 있습니다. 컴파일 동안이 광고

HttpResponse에 getbackdata = http_client.execute (url_data)에 오류가 발생;

나는 심지어 stackoverflow에서 검색했지만 예외 처리를 사용하여 UnknownHostException을 잡는 것이 좋습니다. 내가 그거 했어. 내가 코드를 엉망으로 만든 곳을 모른다. 초보자부터 배우기 때문에 사소한 오류 일 수 있습니다. 미리 감사드립니다.

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main);   

     try { 
      HttpClient http_client=new DefaultHttpClient(); 
      URI url=new URI("http://www.mysite.com"); 
      HttpGet url_data=new HttpGet(url); 

      HttpResponse getbackdata= http_client.execute(url_data); 

      InputStreamReader in =new InputStreamReader(getbackdata.getEntity().getContent()); 
      BufferedReader br = new BufferedReader(in); 

      StringBuffer sb=new StringBuffer(""); 
      String info=""; 
      String nl=System.getProperty("line.separator"); 

      while((info=br.readLine())!=null){ 
       sb.append(info.toString()+nl); 
      } 
      br.close(); 
      TextView output=(TextView) findViewById(R.id.display_output); 
      output.setText(sb.toString()); 
     } catch (UnknownHostException e) { 
      // TODO Auto-generated catch block 
      Log.d("ARR_ERROR","UnknownHostException : "+e); 
     } 
     catch (ClientProtocolException e) { 
      // TODO Auto-generated catch block 
      Log.d("ARR_ERROR","ClientProtocolException : "+e); 

     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      Log.d("ARR_ERROR","IOException : "+e); 
     } 
     catch (URISyntaxException e) { 
     // TODO Auto-generated catch block 
     Log.d("ARR_ERROR","URISyntaxException : "+e); 
    } 


} 
+0

사용 비동기 클래스를. 로그 캣 게시. –

+0

나는 왜 사람들이 내 질문에 대해 슬퍼하는 지 궁금해. –

답변

1

NetworkOnMainThreadException이 맞나요? 네트워크 작업에 AsyncTask을 사용하십시오. UI 스레드에서 수행하지 마십시오.