Intención de búsqueda de reproductor de música nativa de Android
-
23-09-2019 - |
Pregunta
En el reproductor de música de stock en Android 2.1 (al menos), el artista, el álbum y el nombre de la pista de la pista de reproducción actualmente son largos Clickable, que trae un menú contextual "Buscar" Nn con: ", con enlaces a diferentes aplicaciones.
ACTUALIZAR
He logrado extraer los registros de mi propio dispositivo, hacer una búsqueda de un artista y seleccionar Google Listen para completar la acción:
03-02 11:59:34.551 I/ActivityManager( 86): Displayed activity com.android.music/.MediaPlaybackActivity: 1758 ms (total 1953 ms)
03-02 11:59:35.691 I/ActivityManager( 86): Starting activity: Intent { act=android.intent.action.CHOOSER cmp=android/com.android.internal.app.ChooserActivity (has extras) }
03-02 11:59:36.781 I/ActivityManager( 86): Displayed activity android/com.android.internal.app.ChooserActivity: 1036 ms (total 1036 ms)
03-02 11:59:38.191 I/ActivityManager( 86): Starting activity: Intent { act=android.intent.action.MEDIA_SEARCH flg=0x13000000 cmp=com.google.android.apps.listen/.SearchListActivity (has extras) }
03-02 11:59:38.511 D/Listen ( 491): Request search results for http://lfe-alpo-gm.appspot.com/search?q=Finntroll
Definitivamente perseguiré esto yo mismo, pero esto es bastante nuevo para mí. Agradecería la ayuda aquí. ¿Significa lo anterior que mientras me configure? MEDIA_SEARCH
Intento como punto de entrada para una actividad, ¿aparecerá en la lista de selección?
Solución
Bien, MEDIA_SEARCH
fue el camino correcto a seguir. Para referencia:
Agregar el filtro de intención es suficiente para que la aplicación aparezca en la lista de selección en el reproductor multimedia:
<action android:name="android.intent.action.MEDIA_SEARCH" />
Y luego la acción se puede recibir de la siguiente manera:
final Intent queryIntent = getIntent();
final String queryAction = queryIntent.getAction();
if (MediaStore.INTENT_ACTION_MEDIA_SEARCH.equals(queryAction)) {
String artist = queryIntent.getStringExtra(MediaStore.EXTRA_MEDIA_ARTIST);
...
}