我正在尝试为声音池添加声音
我已经坚持了一个多星期了,尝试了各种方法加载通过网址等,但没有任何作用。非常感谢任何帮助。
我收到错误:android.content.res.Resources $ NotFoundException:从可绘制资源ID文件res / raw / claps.wav。
我知道该文件在apk中,因为我解压缩了apk,在/res/raw/claps.wav下找到它。
SoundPool mySoundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 0);
int myAudioFile = context.getResourceId("raw.claps");
try{
mySoundPool.load(context.getActivity(),myAudioFile,1);
} catch (Exception e){
message = String.valueOf(e);
}
谢谢!
答案 0 :(得分:0)
试试这个:
SoundPool mySoundPool = new SoundPool(4, AudioManager.STREAM_MUSIC, 0);
int myAudioFile = getResId("claps", R.raw.class);
try{
mySoundPool.load(context.getActivity(),myAudioFile,1);
} catch (Exception e){
message = String.valueOf(e);
}
public static int getResId(String variableName, Class<?> c) {
Field field = null;
int resId = 0;
try {
field = c.getField(variableName);
try {
resId = field.getInt(null);
} catch (Exception e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}
return resId;
}
答案 1 :(得分:0)
我有类似的问题;我的一半声音会加载,一半会导致android.content.res.Resources $ NotFoundException。原因是我在eclipse中的一个资源文件与文件系统不同步。当我刷新文件时,声音全部从那时开始加载。