MediaPlayer でアクセスする必要がある Android アプリケーションのキャッシュにオーディオ ファイルをダウンロードしています。ファイルは -rw------- の権限で作成されます (Eclipse のファイル エクスプローラーに表示されます)。
これらのアクセス許可では、MediaPlayer はオーディオ ファイルにアクセスできません。失敗は logcat に次のように表示されます。
java.io.IOException: Prepare failed.: status=0x1
私のアプリは API レベル 8 を対象としています。
ダウンロードしたオーディオ ファイルのアクセス許可を MediaPlayer で読み取れるように設定するにはどうすればよいですか?
ちなみに、私は次のファイルを作成しています:
FileOutputStream out = new FileOutputStream(fRecording);
MODE_WORLD_READABLE としてファイルを作成しようとすると、ファイルが作成されません。
FileOutputStream out = activity.openFileOutput(fRecording.getAbsolutePath(), Activity.MODE_WORLD_READABLE);
openFileOutput を使用した logcat エラーは次のとおりです。
java.lang.IllegalArgumentException: File /data/data/com.calltrunk.android/cache/727adda7-0ef1-490f-9853-fe13ad1e9416 contains a path separator