Ton wird nicht abgespielt

  • 3 Antworten
  • Neuester Beitrag
Diskutiere Ton wird nicht abgespielt im Android App Entwicklung im Bereich Betriebssysteme & Apps.
K

Kollen

Gast
Hi all, ich bekomme einfach keinen Ton zu hören von meiner App. Ich schildere mal die Lage: Ich will ich das bei einem button click ein kleiner sound abgespielt werden soll. Dafür hab ich ein button.Der ist mit onclicklistener usw ausgestattet. Für den sound hab ich das definiert:

Code:
[...]
[SIZE=3][B]private MediaPlayer player;[/B][/SIZE]
[...]

@Override
    public void onCreate(Bundle savedInstanceState) {

        [...]
       [SIZE=3] [B]player = MediaPlayer.create(context, R.raw.tasten_ton);[/B][/SIZE]
    }

public void onButtonClick(View view) {

        switch (view.getId()) {

        case R.id.btn_s_d: {

              [SIZE=3][B]if (player != null) {

[/B] [B]                 player.reset();
                player.release();
            }

[/B] [B]             player.start();[/B][/SIZE]

            break;
   }
}
und den tasten_ton.mp3 in den raw (neu erstellt) ordner gepackt.
Aber irgentwie will es nicht funktionieren und die LogCat spuckt das hier raus an der stelle wo das player.start(); steht

FATAL EXCEPTION: main
java.lang.IllegalStateException: Could not execute method of the activity
at android.view.View$1.onClick(View.java:2191)
at android.view.View.performClick(View.java:2586)
at android.view.View$PerformClick.run(View.java:9262)
at android.os.Handler.handleCallback(Handler.java:587)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:130)
at android.app.ActivityThread.main(ActivityThread.java:3744)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:507)
at android.view.View$1.onClick(View.java:2186)
... 11 more
Caused by: java.lang.IllegalStateException
at android.media.MediaPlayer._start(Native Method)
at android.media.MediaPlayer.start(MediaPlayer.java:819)
at de.rechner.Rechner.onButtonClick(Rechner.java:168)
... 14 more

meine Frage wo der Fehler liegt und wieso diese Exception kommt.., wenn es jemand weiß wäre ich sehr Dankbar cycy

mfg
 
DieGoldeneMitte

DieGoldeneMitte

Experte
Was ist denn der Inhalt von context, wenn du den Player kreierst?
Ich würde an dieser Stelle erwarten, dass man "this" übergibt.
 
K

Kollen

Gast
Hi, es ist die mainactivity, dh. context = mainactivity.this;
 
K

Kollen

Gast
Hi, nun wurde der Fehler gefunden :D, ist zwar ein bischen blöd aber naja kann man nichts machen ^^. Nun wenn die app aktiv ist und man drauf clicken kann usw... und man will die Lautstärke erhöhen, was man mit den Tasten vom Handy machen kann, wird die >>Ruftonlautstärke<< erhöht. Aber jetzt hab ich gesehen das die >>Medienlautstärke<< dafür gebraucht wird und die war eben bei mir 0 also lautlos -- yea lol^^. Aber es funktioniert jetzt. Naja passiert..

mfg