サウンドスキームをいくつかの方法で変更してみました。Uri と SoundPool を調べましたが、それらを正しく使用していたかどうかはわかりません。MediaPlayer を使用した作業コードは次のとおりです。
final Context context;
MediaPlayer media;
void play()
{
media=MediaPlayer.create(context, R.raw.soundFile);
media.start();
}
私が言ったように、エミュレーターでは問題なく動作します。oggの音声ファイルですが、mp3とwavを試してみました。
クラッシュのログ ファイルは次のとおりです。
D/AndroidRuntime( 981): Shutting down VM
W/dalvikvm( 981): threadid=1: thread exiting with uncaught exception (group=0x4
0a9c228)
E/AndroidRuntime( 981): FATAL EXCEPTION: main
E/AndroidRuntime( 981): android.content.res.Resources$NotFoundException: File r
es/raw/ouch.ogg from drawable resource ID #0x7f040000
E/AndroidRuntime( 981): at android.content.res.Resources.openRawResource
Fd(Resources.java:1081)
E/AndroidRuntime( 981): at android.media.MediaPlayer.create(MediaPlayer.
java:762)
E/AndroidRuntime( 981): at Seven.Circle.GameView.onTouchEvent(GameView.j
ava:185)
E/AndroidRuntime( 981): at android.view.View.dispatchTouchEvent(View.jav
a:5579)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTransformedTou
chEvent(ViewGroup.java:1965)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:1692)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTransformedTou
chEvent(ViewGroup.java:1965)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:1692)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTransformedTou
chEvent(ViewGroup.java:1965)
E/AndroidRuntime( 981): at android.view.ViewGroup.dispatchTouchEvent(Vie
wGroup.java:1692)
E/AndroidRuntime( 981): at com.android.internal.policy.impl.PhoneWindow$
DecorView.superDispatchTouchEvent(PhoneWindow.java:1982)
E/AndroidRuntime( 981): at com.android.internal.policy.impl.PhoneWindow.
superDispatchTouchEvent(PhoneWindow.java:1441)
E/AndroidRuntime( 981): at android.app.Activity.dispatchTouchEvent(Activ
ity.java:2414)
E/AndroidRuntime( 981): at com.android.internal.policy.impl.PhoneWindow$
DecorView.dispatchTouchEvent(PhoneWindow.java:1930)
E/AndroidRuntime( 981): at android.view.View.dispatchPointerEvent(View.j
ava:5759)
E/AndroidRuntime( 981): at android.view.ViewRootImpl.deliverPointerEvent
(ViewRootImpl.java:2963)
E/AndroidRuntime( 981): at android.view.ViewRootImpl.handleMessage(ViewR
ootImpl.java:2522)
E/AndroidRuntime( 981): at android.view.ViewRootImpl.processInputEvents(
ViewRootImpl.java:862)
E/AndroidRuntime( 981): at android.view.ViewRootImpl.handleMessage(ViewR
ootImpl.java:2531)
E/AndroidRuntime( 981): at android.os.Handler.dispatchMessage(Handler.ja
va:99)
E/AndroidRuntime( 981): at android.os.Looper.loop(Looper.java:154)
E/AndroidRuntime( 981): at android.app.ActivityThread.main(ActivityThrea
d.java:4894)
E/AndroidRuntime( 981): at java.lang.reflect.Method.invokeNative(Native
Method)
E/AndroidRuntime( 981): at java.lang.reflect.Method.invoke(Method.java:5
11)
E/AndroidRuntime( 981): at com.android.internal.os.ZygoteInit$MethodAndA
rgsCaller.run(ZygoteInit.java:784)
E/AndroidRuntime( 981): at com.android.internal.os.ZygoteInit.main(Zygot
eInit.java:551)
E/AndroidRuntime( 981): at dalvik.system.NativeStart.main(Native Method)
E/AndroidRuntime( 981): Caused by: java.io.FileNotFoundException: This file can
not be opened as a file descriptor; it is probably compressed
E/AndroidRuntime( 981): at android.content.res.AssetManager.openNonAsset
FdNative(Native Method)
E/AndroidRuntime( 981): at android.content.res.AssetManager.openNonAsset
Fd(AssetManager.java:503)
E/AndroidRuntime( 981): at android.content.res.Resources.openRawResource
Fd(Resources.java:1078)
E/AndroidRuntime( 981): ... 26 more
今まで気づかなかった "E/AndroidRuntime( 981): FATAL EXCEPTION: main E/AndroidRuntime( 981): android.content.res.Resources$NotFoundException: File r es/raw/ouch.ogg from drawable resource ID #0x7f040000 "、これは確かに私が探していたエラーです。迅速な修正に関する提案をお待ちしています。それまではデバッグを続けます。