2012-01-20 29 views
0

我正在尋找一種方法來定製我的個人鬧鐘應用程序,並且我想選擇何時需要爲我的應用程序瀏覽sd音頻文件的不同聲音。 我的代碼的核心是這樣的:在Intent搜索中獲取音頻文件的路徑

Button butsearch=(Button) findViewById(R.id.buttonsearch); 
    butsearch.setOnClickListener(new OnClickListener() 
    { 
     public void onClick(View v) 
     { 
      mysearch.setAction(Intent.ACTION_GET_CONTENT); 
      mysearch.setType("audio/*"); 
      startActivity(mysearch); 
     } 
    }); 

那麼Android將顯示我的應用程序的菜單瀏覽文件,我通常選擇音樂(默認設置),將顯示一個列表(我可以聽的預覽該文件)但是當我按OK按鈕時,我必須保留我選擇的文件的路徑。我必須將其保存爲textview或類似文件,然後保存在數據庫中,以便在報警MediaPlayer中使用它。

我嘗試了startActivityForResult(mysearch,RESULT_OK);

但我必須寫在方法的主體? 我tryed(只是爲了看看它是否工作)

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{ 
     Toast.makeText(getApplicationContext(), "result_notok", Toast.LENGTH_LONG).show(); 
     if (resultCode == RESULT_OK) 
     { 
      Toast.makeText(getApplicationContext(), "result_ok", Toast.LENGTH_LONG).show(); 
     } 

} 

,但我不能看到敬酒。

回答

0

試試這個..

Intent intent = new Intent(); 
intent.setAction(android.content.Intent.ACTION_VIEW); 
File file = new File(YOUR_ALARM_OR_AUDIO_URI); 
intent.setDataAndType(Uri.fromFile(file), "audio/*"); 
startActivity(intent); 

瞭解意圖:intent ref.