2

我在加载 mp3 文件时遇到问题。当我将 char 数组或 jstring 参数提供给 android java 本机方法时,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);

本地方法 ... public native void cPlaySound(char[] path);

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 回答