2

mp3 ファイルの読み込みに問題があります。android Javaネイティブメソッドにchar配列やjstring引数を渡すとcソースファイルが動きません。

パスパラメータが正しく機能していない可能性があります。どうしたの?

私の質問に答えてください。

main.c


void Java_com_chocolate_player_PlayerMain_cPlaySound(JNIEnv env, jobject thiz, const char path) { FMOD_RESULT 結果 = FMOD_OK;

result = FMOD_System_CreateSound(gSystem, path, FMOD_CREATECOMPRESSEDSAMPLE | FMOD_OPENMEMORY, 0, &gSound);
CHECK_RESULT(result);

__android_log_write(ANDROID_LOG_INFO, "path", path);

result = FMOD_System_PlaySound(gSystem, FMOD_CHANNEL_FREE, gSound, 0, &gChannel);
CHECK_RESULT(result);

}

アンドロイド Java ソース


再生方法で... char[] fmodPath = songPath.replace("/mnt", "").toCharArray(); cPlaySound(fmodPath);

ネイティブ メソッド ... パブリック ネイティブ void cPlaySound(char[] パス);

4

1 に答える 1

0

プロジェクトマニフェストにREAD_EXTERNAL_STORAGE権限を追加します。

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/> 

パスは「/」記号で始まる必要があります。

/sdcard/myfile.mp3
于 2012-08-19T14:24:16.057 に答える