Wie bekomme ich, dass eine andere App gerade Audio abspielt? [Duplizieren]
Diese Frage hat hier bereits eine Antwort:
Audio Informationen zum aktuellen Titel iOS Swift 1 AntwortWie kann ich auf das aktuell wiedergegebene Audio einer anderen App zugreifen? Das eigentliche Audioelement, aber auch Metadaten sind willkommen. Ich kann sehen, dass diese Frage oft gestellt wurde, aber im Laufe der Jahre nur wenige Lösungen angeboten wurden. Ich verstehe Apfels Philosophie fürwahrscheinlic Ich möchte nicht, dass eine App dazu in der Lage ist. Ich verstehe auch, dass eine solche Anfragewahrscheinlic außerhalb der iOS-API. Wenn das gesagt ist, hätte ich wirklich gerne eine Lösung.
Logischerweise fühle ich, dass
MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
sollte die Informationen für das zurückgeben, was gerade abgespielt wird; Wie bereits erwähnt, ist dieser Wert jedoch immer nil
für Audio, das außerhalb Ihrer App abgespielt wird. Insbesondere scheinen populäre Audio-Apps die MPNowPlayingInfoCenter-Klasse nicht zu verwenden, sodass solche Audiodaten nicht angezeigt werden.
Wenn Sie die Standard-Musik-App verwenden, können Sie @ verwende
MPMusicPlayerController.systemMusicPlayer().nowPlayingItem
Was ist jedoch konsequenter, um über die Podcasts-App, Spotify, Pandora, Safari usw. auf die Audiowiedergabe zuzugreifen?
Hat jemand eine Lösung dafür gefunden? Gibt es alte Objective-C-Frameworks, die diese Funktionalität unterstützen?
Ein Ansatz ist möglicherweise sinnvoll, wenn ich auf den Audiopfad des aktuell wiedergegebenen Elements zugreifen kann. Wenn ich zum Beispiel den Pfad des aktuell wiedergegebenen Elements abrufen könnte, könnte ich daraus ein AV-Objekt erstellen:
AVAudioPlayer(contentsOfURL: audioUrl)
Gibt es eine Möglichkeit, die Audio-URL des aktuell wiedergegebenen Elements abzurufen und auf diese Weise zu verwenden?
Ist ein anderer Ansatz besser?
Wenn eine native Lösungist nicht vorhande, Ist es möglich, zu bodge etwas zusammen damit es funktioniert? Irgendwelche Ratschläge oder Ideen willkommen.
Edit: Ich glaube nicht, dass jemand in der Lage war, dies zu erreichen. Ich denke jedoch, dass viele Leute dies gerne tun würden. Wenn dies behoben wurde, verlinken Sie es bitte! :)