2012-03-09 2 views
0

가능한 중복 :
android.os.NetworkOnMainThreadException읽기 텍스트 파일

나는 텍스트 뷰에서 서버에서 텍스트 파일 (몇 마디 한 선) 열려 ,하지만 활동을 열 때 내 현재 코드가 응용 프로그램을 중단합니다. 나는 시도했다 : How to read text file in android from web?하지만 그 또한 응용 프로그램을 추락 (그것이 그들을 원 추가 시도/캐치과) :

urlTextOut = (TextView) findViewById(R.id.URLtextView); 
StringBuilder text = new StringBuilder(); 

try { 
    String str = ""; 
    URL url = new URL("http://mysite.com/text1.txt"); 

    BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream())); 

    while ((str = in.readLine()) != null) { 
     text.append(str); 
    } 
    in.close(); 
} catch (MalformedURLException e1) { 
} catch (IOException e) { 
} 

urlTextOut.setText(text); 

내가이 매우 비슷한 시도했습니다. Apache의 HttpComponents를 살펴 보았지만 다운로드 한 zip 파일로 수행 할 작업을 파악할 수 없었습니다.

답변

0

아마 NetworkOnMainThreadException이 표시됩니다. Android는 기본/UI 스레드 (즉, 활동 내 직접)에서 네트워크 호출을 허용하지 않습니다. 별도의 스레드 인 see this question for an example을 사용해야합니다.

+0

감사합니다. 그게 잘못되었습니다. AsyncTask 클래스에 대해 다소 혼란 스럽습니다. 'AsyncTask '및 'RSSFeed doInBackground 보호'라는 RSSFeed에 문제가 있습니다. RSSFeeds가 아닌 String을 사용하고 있기 때문에 String을 두 번째로 변경하려고 시도했지만 도움이되지 않았습니다. – user1260239