Thomas Könning
- Forum-Beiträge: 16
11.05.2011, 19:42:04 via Website
11.05.2011 19:42:04 via Website
Hallo,
habe eine einfache App geschrieben, die einen Sound abspielt, eine bestimmte Zeit wartet und anschließend den Sound nochmal abspielt.
Diese Teste ich im Emulator.
Hier der Code, der funktioniert (als Auszug):
Also einmal den Sound abspielen, funktioniert.
Wenn ich aber jetzt den Sound 3 mal abspielen will, muss ich ja mit reset() und prepare() arbeiten.
leider führt ein Aufruf von prepare() zum Absturz der App:
Wie gesagt, mit dem prepare() Aufruf stürzt die App ab.
Und zwar direct, ohne dass die View aufgebaut wird.
Hier die Log Ausgabe:
Hat jemand eine Idee, wieso prepare() abstürzt?
Danke im Voraus.
Gruß
Thomas
habe eine einfache App geschrieben, die einen Sound abspielt, eine bestimmte Zeit wartet und anschließend den Sound nochmal abspielt.
Diese Teste ich im Emulator.
Hier der Code, der funktioniert (als Auszug):
1public class Test extends Activity {
2 private MediaPlayer mp;
3
4
5
6 mp = MediaPlayer.create(this, R.raw.bell);
7 mp.start();
8}
2 private MediaPlayer mp;
3
4
5
6 mp = MediaPlayer.create(this, R.raw.bell);
7 mp.start();
8}
Also einmal den Sound abspielen, funktioniert.
Wenn ich aber jetzt den Sound 3 mal abspielen will, muss ich ja mit reset() und prepare() arbeiten.
leider führt ein Aufruf von prepare() zum Absturz der App:
1public class Test extends Activity {
2 private MediaPlayer mp;
3
4
5
6 mp = MediaPlayer.create(this, R.raw.bell);
7
8 for (int i = 0; i < 3; i++) {
9 mp.start();
10 mp.reset();
11 try {
12 mp.prepare();
13 }
14 catch (IOException e) {
15 e.getStackTrace();
16 }
17 }
18}
2 private MediaPlayer mp;
3
4
5
6 mp = MediaPlayer.create(this, R.raw.bell);
7
8 for (int i = 0; i < 3; i++) {
9 mp.start();
10 mp.reset();
11 try {
12 mp.prepare();
13 }
14 catch (IOException e) {
15 e.getStackTrace();
16 }
17 }
18}
Wie gesagt, mit dem prepare() Aufruf stürzt die App ab.
Und zwar direct, ohne dass die View aufgebaut wird.
Hier die Log Ausgabe:
1!ENTRY com.android.ide.eclipse.adt 4 0 2011-05-11 19:38:37.753
2!MESSAGE No command output when running: 'am start -n de.aikitux.test/de.aikitux.test.Test -a android.intent.action.MAIN -c android.intent.category.LAUNCHER' on device emulator-5554
3!STACK 0
4com.android.ddmlib.ShellCommandUnresponsiveException
5 at com.android.ddmlib.AdbHelper.executeRemoteCommand(AdbHelper.java:408)
6 at com.android.ddmlib.Device.executeShellCommand(Device.java:276)
7 at com.android.ide.eclipse.adt.internal.launch.ActivityLaunchAction.doLaunchAction(ActivityLaunchAction.java:74)
8 at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.launchApp(AndroidLaunchController.java:1146)
9 at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.clientChanged(AndroidLaunchController.java:1489)
10 at com.android.ddmlib.AndroidDebugBridge.clientChanged(AndroidDebugBridge.java:868)
11 at com.android.ddmlib.Device.update(Device.java:398)
12 at com.android.ddmlib.Client.update(Client.java:835)
13 at com.android.ddmlib.HandleAppName.handleAPNM(HandleAppName.java:90)
14 at com.android.ddmlib.HandleAppName.handleChunk(HandleAppName.java:64)
15 at com.android.ddmlib.MonitorThread.callHandler(MonitorThread.java:414)
16 at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:322)
17 at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)
2!MESSAGE No command output when running: 'am start -n de.aikitux.test/de.aikitux.test.Test -a android.intent.action.MAIN -c android.intent.category.LAUNCHER' on device emulator-5554
3!STACK 0
4com.android.ddmlib.ShellCommandUnresponsiveException
5 at com.android.ddmlib.AdbHelper.executeRemoteCommand(AdbHelper.java:408)
6 at com.android.ddmlib.Device.executeShellCommand(Device.java:276)
7 at com.android.ide.eclipse.adt.internal.launch.ActivityLaunchAction.doLaunchAction(ActivityLaunchAction.java:74)
8 at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.launchApp(AndroidLaunchController.java:1146)
9 at com.android.ide.eclipse.adt.internal.launch.AndroidLaunchController.clientChanged(AndroidLaunchController.java:1489)
10 at com.android.ddmlib.AndroidDebugBridge.clientChanged(AndroidDebugBridge.java:868)
11 at com.android.ddmlib.Device.update(Device.java:398)
12 at com.android.ddmlib.Client.update(Client.java:835)
13 at com.android.ddmlib.HandleAppName.handleAPNM(HandleAppName.java:90)
14 at com.android.ddmlib.HandleAppName.handleChunk(HandleAppName.java:64)
15 at com.android.ddmlib.MonitorThread.callHandler(MonitorThread.java:414)
16 at com.android.ddmlib.MonitorThread.processClientActivity(MonitorThread.java:322)
17 at com.android.ddmlib.MonitorThread.run(MonitorThread.java:263)
Hat jemand eine Idee, wieso prepare() abstürzt?
Danke im Voraus.
Gruß
Thomas
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.