Eu tenho um programa que deveria tocar um som quando eu aperto um botão, mas quando eu uso a classe que é responsavel para reproduzir o som ela não acha o arquivo!
Segue meu codigo:
//Aqui eu chamo a classe MediaPlayer q é responsável por tocar o som
MediaPlayer mediaPlayer = MediaPlayer.create(this, R.raw.som);
mediaPlayer.start();
Segue a minha classe R
public final class R {
public static final class attr {
}
public static final class drawable {
public static final int bt01=0x7f020000;
public static final int bt02=0x7f020001;
}
public static final class id {
public static final int TextView01=0x7f060000;
public static final int imagem1=0x7f060001;
}
public static final class layout {
public static final int main=0x7f030000;
}
public static final class raw {
public static final int som=0x7f040000;
}
public static final class string {
public static final int app_name=0x7f050000;
}
}
Está aparentemente tudo certo, o arquivo esta na pasta res/raw/ e não sei porque ele não acha o arquivo, eu já procurei na internet e encontro exemplos do mesmo jeito que estou fazendo, mas nenhum funciona, sempre o mesmo erro. Já tentei tanto no Eclipse quanto no Netbeans!
Quando eu chamo o metodo create dispara a seguinte excessão:
12-31 22:31:17.060: WARN/System.err(5078): android.content.res.Resources$NotFoundException: File res/raw/som from drawable resource ID #0x7f040000
12-31 22:31:17.060: WARN/System.err(5078): at android.content.res.Resources.openRawResourceFd(Resources.java:859)
12-31 22:31:17.070: WARN/System.err(5078): at android.media.MediaPlayer.create(MediaPlayer.java:638)
12-31 22:31:17.070: WARN/System.err(5078): at org.me.hmm.tela.FrmPrincipal.play(FrmPrincipal.java:58)
12-31 22:31:17.080: WARN/System.err(5078): at org.me.hmm.tela.FrmPrincipal.onTouch(FrmPrincipal.java:51)
12-31 22:31:17.090: WARN/System.err(5078): at android.view.View.dispatchTouchEvent(View.java:3706)
12-31 22:31:17.090: WARN/System.err(5078): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:885)
12-31 22:31:17.090: WARN/System.err(5078): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:885)
12-31 22:31:17.100: WARN/System.err(5078): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:885)
12-31 22:31:17.100: WARN/System.err(5078): at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:885)
12-31 22:31:17.110: WARN/System.err(5078): at com.android.internal.policy.impl.PhoneWindow$DecorView.superDispatchTouchEvent(PhoneWindow.java:1712)
12-31 22:31:17.110: WARN/System.err(5078): at com.android.internal.policy.impl.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1116)
12-31 22:31:17.110: WARN/System.err(5078): at android.app.Activity.dispatchTouchEvent(Activity.java:2142)
12-31 22:31:17.110: WARN/System.err(5078): at com.android.internal.policy.impl.PhoneWindow$DecorView.dispatchTouchEvent(PhoneWindow.java:1696)
12-31 22:31:17.120: WARN/System.err(5078): at android.view.ViewRoot.handleMessage(ViewRoot.java:1738)
12-31 22:31:17.120: WARN/System.err(5078): at android.os.Handler.dispatchMessage(Handler.java:99)
12-31 22:31:17.120: WARN/System.err(5078): at android.os.Looper.loop(Looper.java:130)
12-31 22:31:17.120: WARN/System.err(5078): at android.app.ActivityThread.main(ActivityThread.java:4425)
12-31 22:31:17.120: WARN/System.err(5078): at java.lang.reflect.Method.invokeNative(Native Method)
12-31 22:31:17.120: WARN/System.err(5078): at java.lang.reflect.Method.invoke(Method.java:521)
12-31 22:31:17.120: WARN/System.err(5078): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
12-31 22:31:17.120: WARN/System.err(5078): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
12-31 22:31:17.120: WARN/System.err(5078): at dalvik.system.NativeStart.main(Native Method)
12-31 22:31:17.120: WARN/System.err(5078): Caused by: java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed
12-31 22:31:17.130: WARN/System.err(5078): at android.content.res.AssetManager.openNonAssetFdNative(Native Method)
12-31 22:31:17.130: WARN/System.err(5078): at android.content.res.AssetManager.openNonAssetFd(AssetManager.java:410)
12-31 22:31:17.130: WARN/System.err(5078): at android.content.res.Resources.openRawResourceFd(Resources.java:856)
12-31 22:31:17.130: WARN/System.err(5078): ... 21 more
Att
Guilherme