3 Stimmen

Absturz von Android Ringtone Play auf 4.2

Ich habe Probleme beim Abspielen eines Klingeltons auf meinem Nexus 4 mit Android 4.2.

Wenn ich versuche, einen Klingelton abzuspielen, erhalte ich die folgende Ausnahme:

java.lang.NullPointerException at android.media.Ringtone.play(Ringtone.java:228)

Mein Code ist unten:

RingtoneManager ringtoneManager = new RingtoneManager(context);
ringtoneManager.setType(AudioManager.STREAM_NOTIFICATION);
Ringtone ringtone = ringtoneManager.getRingtone(index);
Ringtone ringtone.setStreamType(AudioManager.STREAM_NOTIFICATION);

if (ringtone != null)
{
    ringtone.play();
}

Der Indexwert wird an meine Methode übergeben, die auf einer Benutzerauswahl basiert (ich präsentiere ihnen die Liste der auszuwählenden Klingeltöne). In jedem Fall macht es keinen Unterschied, was ich dies auf das Verhalten ist immer das gleiche.

Dieser Code funktioniert perfekt, wenn er auf meinen beiden anderen Geräten mit 2.3 und 4.0.4 läuft.

Wenn ich debuggen kann ich sehen, dass die uri ist null in der Ringtone, die von der Ringtone-Manager zurückgegeben wird (und ist auf einen gültigen Wert auf meine anderen Geräte gesetzt).

Mache ich etwas falsch oder könnte dies ein Fehler in 4.2 sein?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X