2011-04-29 3 views
1

누구나 Android Threads를 간단한 방법으로 설명하는 예제 프로그램을 제공하십시오. 예를 들어, 시작시 스레드의 SD 카드에있는 노래를 나열하고 싶습니다.android에서 스레드 작업을 수행하는 방법

다음 코드를 사용하여 안드로이드 장치의 SD 카드에있는 노래 수를 얻습니다. 이로부터 나는 ......이 작업을 수행하는 방법에

private void init_phone_sd_card() 
    { 
     System.gc(); 
     final String[] proj = { MediaStore.Audio.Media._ID,MediaStore.Audio.Media.DATA,MediaStore.Audio.Media.DISPLAY_NAME,MediaStore.Audio.Media.SIZE }; 
     Log.e("media",""+proj); 

     musiccursor = managedQuery(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI,proj, null, null, null); 
     Log.e("media1",""+musiccursor); 

     count = musiccursor.getCount(); 
     Log.e("media2",""+count); 

스레드

에있는 노래를 목록

들으

답변

1

그냥 AsyncTask를의 doInBackground() 메소드에 코드를 삽입하고 싶습니다. 또한 유용한 작업이 실행 중임을 사용자에게 알리기 위해 작업에는 ProgressDialog가 표시되어야합니다. this 도움말을 참조하십시오.

1

간단한 스레드 작업을 요청하는 경우, this will help 당신에게 ...

아니면 아래와 같은 비동기 클래스를 사용 할 수 있습니다,

class AddStringTask extends AsyncTask<Void, String, Void> { 
    @Override 
    protected Void doInBackground(Void... unused) { 
     for (String item : items) { 
      publishProgress(item); 
      SystemClock.sleep(1000); 
     } 

     return(null); 
    } 

    @Override 
    protected void onProgressUpdate(String... item) { 
     ((ArrayAdapter)getListAdapter()).add(item[0]); 
    } 

    @Override 
    protected void onPostExecute(Void unused) { 
     Toast 
      .makeText(Async.this, 
        "Done", 
        Toast.LENGTH_SHORT) 
      .show(); 
    } 
}