2011-11-09 14 views
1

私のアプリで使用されるいくつかのWAVファイルは現在res/rawにあります。これらのファイルは、アプリケーションのインストール後にユーザーがアクセスできる必要があります。だから、理想的には、私のアプリは、デバイス上にフォルダを作成し、そのファイルを置く必要があります。どのようにこれを行うにはどのようなアイデア/提案?あなたは、ディレクトリを作成し、生/ RESからロードしたサウンドをする必要がありますが、あなたのファイル外部のWAVファイルをAndroidに含める方法

// create a File object for the parent directory 
File yourDirectory = new File("/sdcard/YourDirectory/"); 
// have the object build the directory structure, if needed. 
yourDirectory.mkdirs(); 
// create a File object for the output file 
File outputFile = new File(yourDirectory, filename); 
// now attach the OutputStream to the file object, instead of a String representation 
FileOutputStream fos = new FileOutputStream(outputFile); 

出力ファイルを置くことができるように

soundIds[0] = soundPool.load(test2Activity, R.raw.snare, 1); 
     soundIds[1] = soundPool.load(test2Activity, R.raw.snare2, 1); 

答えて

0

あなたは、sd_cardにアクセスすることができます。 私のアドバイスは、ちょうどフォルダにサウンドをコピーして、まだあなたがリソース

2としてアクセスすることができますので、簡単です

1)ので、あなたのアプリの中から生のres /からの音を使用することです)あなたは、ユーザーがディレクトリを削除しなかったと確信しています。

は病気という試みを与えるマニフェスト

+0

偉大なおかげでユーザー権限「android.permission.WRITE_EXTERNAL_STORAGE」を置くことを忘れないでください。私はそれを必要とするユーザーがサウンドを編集することができ、アプリはそれを使用します。 – user1033558

+0

ファイル名を入力するとどうなりますか? R.raw.snare does not work。( – user1033558

+0

@ user1033558 filanemeは文字列です。 http://developer.android.com/reference/android/content/res/Resources.html#openRawResource%28intを使用してください。リソース –

関連する問題