2013-10-19 2 views
1

오랫동안 질문하고 싶지는 않습니다. 간단하게 나는 oncreate 내부에서 사용자 기능을 어떻게 호출 할 수 있을까요? 또한 매번 catch catch를 사용해야합니까?oncreate 함수에서 JSONObject 함수를 호출하는 방법은 무엇입니까?

public class Json extends Activity { 

    HttpClient client; 
    TextView tvStatus; 

    final static String url = "http://localhost/index.php"; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     // TODO Auto-generated method stub 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.json); 

     tvStatus = (TextView) findViewById(R.id.tvStatus); 
     client = new DefaultHttpClient(); 

    } 

    public JSONObject users() throws ClientProtocolException, IOException 
    { 
     StringBuilder URL = new StringBuilder(); 
     HttpGet get = new HttpGet(url); 
     HttpResponse r = client.execute(get); 

     int status = r.getStatusLine().getStatusCode(); 
     tvStatus.setText(status); 

     return null;   
    } 
} 
+1

전체 스택 추적을 표시 할 수 있습니까? – hexafraction

+0

@hexafraction 죄송합니다 위 코드를 실행할 때 오류가 발생하지 않습니다. 하지만 거기에 오류가 나는 사용자()로 함수를 호출 –

+0

'StringBuilder URL을 = 새로운 StringBuilder(); HttpGet get = 새 HttpGet (url);'- url은 항상 비어 있습니다. HTTPClient가 무엇을 반환 할 것으로 기대합니까? – Simon

답변

1

아직 전체 스택 트레이스가 없으므로 필자는 추측 할 것입니다. 문제는 주 스레드에서 물건을 실행하는 것입니다. 안드로이드 4.0부터 백그라운드에서 실행해야합니다.

거기에는 AsynTask이 있습니다. 간단하게 클래스를 만들고 상속받습니다. Check this out for more infos

+0

이 질문에 대한 답변이 아닌 것 같습니다. 코드에는 문제가 없습니다. 난 그냥 oncreate에서 users() 호출하는 방법을 모르겠다 –

+0

함수 끝에 JSONObject jsonObect = this.users();를 작성하는 것은 어떻습니까? 'jsonObject'는 항상 null이라는 것에주의하십시오. – Niklas

+0

setText 함수를 호출 할 수 없습니까? 지금은 그 기능에서 아무 것도 얻고 싶지 않습니다. 나는 지금 무언가를 이해한다고 생각한다. :) –

관련 문제