Frage

Hoffentlich eine einfache für jemanden, aber mir Probleme verursacht.

Ich habe eine App, die Sounddateien verleiht. Ich habe keinen Code in Onpause, da ich möchte, dass die App weiterhin Musik im Hintergrund spielt.

Ich brauche jetzt die App, um zu schließen, wenn ein eingehender Anruf empfangen wird.

Ich kann Code zu Onpause hinzufügen und die Aktivität schließen und den Mediplayer stoppen. Dies stoppt jedoch die App, wenn eine App gestartet wird.

Wie kann ich einen eingehenden Anruf erkennen, nach dem ich innerhalb von Onpause nachsehen kann?

War es hilfreich?

Lösung

Um den eingehenden Anruf zu erkennen, registrieren wir einen Broadcastreceiver für die Aktion Android.intent.Action.phone_State. Dies wird ausgestrahlt, wenn sich der Telefonzustand ändert. Die empfangende Absicht hat eine zusätzliche Zeichenfolge variabler telefonyManager.extra_state, die den Telefonzustand beschreibt. Wenn dieser Status telefonischManager.extra_State_Ringing ist, gibt es eine weitere zusätzliche String -Variable telefonische Manager.extra_incoming_number. Diese Variable enthält die eingehende Telefonnummer. Beachten Sie, dass diese Variable nicht vorhanden ist, wenn der Status nicht telefonisch.extra_state_ringing ist.

Quelle : http://www.androiddevblog.net/android/detecting-incoming-and-outgoing-calls-in-android

Sobald Sie einen Broadcast -Empfänger registriert haben, können Sie sich auf die Rundfunkmeldung anhören, die Sie für Ihr Telefon interessieren, und dann entsprechend handeln.

Andere Tipps

Du musst nicht. Android kümmert sich darum, dass es in Ihrer App pausiert - Sie müssen einen Telefonie -Manager verwenden, um festzustellen, ob Ihre Aplikation gestoppt werden soll oder nicht. Der richtige Weg wäre, dies in der Methode onPause () zu behandeln

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top