2014-03-04 2 views
0

I 앱의 안드로이드를 구축했습니다 서버에서 콘텐츠를 안드로이드 진저 브레드에서HttpClient가 jelly bean에서 작동하지 않습니까?

  String getRequest(String SUrl){ 
      String vResult = "TEST"; 
     //SUrl result of "http://mydomain.com/file.php?var=21" 
      HttpClient client = new DefaultHttpClient(); 
      HttpGet request;    
      try{     
       request=new HttpGet(SUrl); 
       HttpResponse response = client.execute(request); 


       vResult=request(response); 

      }catch(Exception ex){ 
       Log.e("From Server", ex.getMessage()); 

      } 
      return vResult; 
     } 

     public static String request(HttpResponse response){ 
      String result = ""; 
      try{ 
       InputStream in = response.getEntity().getContent(); 
       BufferedReader reader = new BufferedReader(new InputStreamReader(in)); 
       StringBuilder str = new StringBuilder(); 
       String line = null; 
       while((line = reader.readLine()) != null){ 
        str.append(line + "\n"); 
       } 
       in.close(); 
       result = str.toString(); 
      }catch(Exception ex){ 
       result = "Error"; 
      } 
      return result; 
     } 

, URL의 내용을 얻기 위해 잘 작동 위의 코드를 HTTP 클라이언트를 사용하지만,이

같은 젤리 빈의 코드 결과 로그
java.lang.NullPointerException: println needs a message 

왜 내가 젤리 빈에서 나는 이미 모든 변수를 선언 null이?

감사

+1

앱에 관계없이 안드로이드 버전의 실패'ex.getMessage()'리턴'Log.e ("서버에서"전에서 널 (null)합니다. getMessage());를 NPE보다 위에 추가합니다. – ozbek

+0

다음과 같이 변경하십시오. Log.e ("From Server", ex.getMessage() + ""); –

+0

@ltvie UI 스레드에서 네트워크를 요청하려고 시도하고 HONEYCOMB (API 수준 11)에서 금지 된'NetworkOnMainThreadException'을 얻었습니다. – R4j

답변

1

이 시도 ..

 catch(Exception ex){ 
      Log.e("From Server", ""+ex.printStackTrace()); 

     } 
관련 문제