2017-04-01 8 views
0

私は内部メモリから曲を選んで再生する次のコードを設定しました。メディアプレイヤーが選択されたファイルを開かないandroid(setDataSource failed:status = 0x80000000)

Intent intent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Audio.Media.EXTERNAL_CONTENT_URI); 
          startActivityForResult(intent, 10); 

マイonActivityResult:

@Override 
protected void onActivityResult(int requestCode, int resultCode, Intent data) { 

    if(resultCode == RESULT_OK){ 
     Uri uriSound = data.getData(); 

     play(this, uriSound); 
    } 
} 

、最終的に私のプレイ方法: ます。private voidプレイ(コンテキストコンテキスト、ウリURI){

MediaPlayer mip = new MediaPlayer(); 
    try { 

     mip.setDataSource(context, uri); 
     mip.prepare(); 
     mip.start(); 
    } catch (IllegalArgumentException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (SecurityException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IllegalStateException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } catch (IOException e) { 
     // TODO Auto-generated catch block 
     e.printStackTrace(); 
    } 
} 

}

けどこれを実行して、次のエラーが発生し続ける:

java.io.IOException: setDataSource failed.: status=0x80000000 

どこでもうまく解決策を見つけることができませんでした。 アイデア

答えて

1

マニフェストファイルに外部ストレージを読み取る権限を許可しました。

関連する問題