2013-06-21 10 views
9

ich in Spotify nur diese Einstellungen Option für Android-Einstellungen Bildschirm herausgefunden Das bedeutet, dass jede andere App auf das zugreifen kann, was über Spotify abgespielt wird. Wie kann dies umgesetzt werden? Gibt es Unterlagen?Wie ist es möglich zu wissen, was spotify von einer externen Android-App spielt? „- zulassen, dass andere Anwendungen auf dem Gerät zu sehen, was Sie hören Geräte Broadcast-Status“</p> </blockquote> <p>Ich denke,</p> <blockquote> <p>:

Dank

+1

Auschecken [LibSpotify] (https://developer.spotify.com/technologies/libspotify/), es ist eine AC-Bibliothek, aber Sie können ein [Beispiel] (https://github.com/spotify/pyonspotify) sehen Wenn es in einer Android-App integriert ist, kann es Ihnen helfen. – AlexBcn

+0

danke, ich schaue mal –

+1

Wer vom Spotify-Team kümmert sich darum? Ich nehme an, dass die Einstellung einen Intent sendet, aber wir brauchen den Aktionsnamen, um ihn verwenden zu können. – Tenfour04

Antwort

16

Spotify hat folgende Intent-Aktionen:

metadatachanged, playbackstatechanged und queuechanged.

queuechanged enthält keine zusätzlichen Daten.
playbackstatechanged hat einen booleschen Wert für "playing" und einen Wert für playbackPosition.
metadatachanged enthält Künstler-, Album-, Track-, Längen- und ID-Werte.

Sie können Künstler, Track zu bekommen, und die Namen des Albums, wenn die Spur (manuell oder automatisch) geändert wird durch mit com.spotify.mobile.android.metadatachanged

Wenn Spotify wieder angehalten und gestartet wird, Nur Wiedergabestatus geändert wird gesendet.

+4

Es sieht so aus, als hätte sich das in 'com.spotify.music.metadatachanged' und ähnlich geändert. –

+0

Sorry, aber es hat nicht für mich funktioniert.kannst du mir damit helfen? – Nahid

+0

Dies ist dokumentiert unter https://developer.spotify.com/technologies/spotify-android-sdk/android-media-notifications/ – Vitor

5

Spotify Sendungen der Standard com.android.music.metachanged Intent-Aktion verwendet wird. eine BroadcastReceiver für die Intent-Aktion registrieren, dann wählen Sie einfach aus Metadaten

String Künstler = intent.getStringExtra ("Künstler") verwendet wird;
String album = intent.getStringExtra ("Album");
String track = intent.getStringExtra ("track");

+1

ziemlich cool! Ist das offiziell oder wird es sich irgendwann ändern? –

+0

Sinn, dass Sie "Device Broadcast-Status" von der App wechseln müssen Ich schätze, es ist hier zu bleiben. – Freddroid

+0

cool danke Kumpel! –