2013-02-10 12 views
0

首先,我打個電話給無法獲得媒體播放器工作時,SD驅動未安裝

get_fullPathToAudio(); 

,以確定音頻文件的下載路徑。

public File get_fullPathToAudioAsFile() 
    {  
     File storageFile = this.getExternalFilesDir(null); 
     if (storageFile == null) 
     { 
      // no external storage so store on private path 
      storageFile = this.getFilesDir(); 
     } 
     return storageFile; 
    } 
    public String get_fullPathToAudio() { 

     return get_fullPathToAudioAsFile() + File.separator + this.get_currentArticleAudioFileName(); 
    } 


String filePath = this.myApp.get_fullPathToAudio(); 
       mediaPlayer.setDataSource(filePath); 
       mediaPlayer.prepare(); 
       mediaPlayer.start(); 

一切運作良好,如果我有我的模擬器的SD驅動器,但是當我沒有模擬器的功能做

get_fullPathToAudioAsFile(); 

使用

getFilesDir(); 

,而不是

getExternalFilesDir(null); 

它返回一個路徑到我的p我的應用程序安裝在裏面的驅動器。我可以看到文件 data/data/com.myapp/files/myfile.m4a

例如。如果音頻文件不在SD驅動器上,是否有其他方式播放音頻文件?

錯誤訊息我得到的是

錯誤(-1,-2147483648) 能播放

回答