我在加载mp3文件时遇到问题。 当我将char数组或jstring参数赋给android java native方法时, 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);
}
android java source
在游戏方法中...... char [] fmodPath = songPath.replace(“/ mnt”,“”)。toCharArray(); cPlaySound(fmodPath);
原生方法...... public native void cPlaySound(char [] path);
答案 0 :(得分:0)
为项目清单添加READ_EXTERNAL_STORAGE权限:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
和路径必须以“/”符号开头:
/sdcard/myfile.mp3