Estoy trabajando en una aplicación y quiero integrar la aplicación Last.fm en ella. Básicamente, cuando alguien está mirando a un artista en mi aplicación, me gustaría tener un botón que puedan tocar para abrir la aplicación Last.fm con la información del artista.Android: Iniciar una actividad para una aplicación de terceros diferente
esta intención obras, sino que carga un menú preguntando qué aplicación me gustaría utilizar (Navegador o Last.fm):
Intent i = new Intent();
i.setData(Uri.parse("http://last.fm/music/" + headliner));
i.setAction("android.intent.action.VIEW");
startActivity(i);
Sin embargo, sólo quiero iniciar la aplicación y vaya Last.fm pedirlo diálogo de la aplicación que se utilice, pensé que tal vez utilizando el método setPackage() sería el siguiente:
i.setPackage("fm.last.android");
Pero hace que el cierre de la aplicación:
android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=http://last.fm/music/Rihanna pkg=fm.last.android }
¿Es posible simplemente iniciar la aplicación Last.fm? Here's una copia de AndroidManifest.xml de Last.fm como referencia.
Gracias por leer, , Tony
Esto es un truco y no se considera la forma correcta de llamar a las aplicaciones. Esta es una forma segura de asegurarse de que se muestren todos los tipos de errores – Falmarri
¿Puede explicar por qué esto es un truco? ¿está utilizando el Intento regular de la aplicación que también ha llamado el Iniciador de aplicaciones, es decir, cuando hace clic en el icono de la aplicación en la pantalla de inicio? De todos modos, ¿cuál es la forma correcta de sugerir en su lugar? –
Tal vez lo malentendí. Si llamas a la actividad que llama el iniciador, entonces creo que debería estar bien. Entendí la pregunta como llamar a una actividad interna de un paquete diferente. Esto es propenso a romperse porque esa actividad podría requerir extras de intención que podrían causar un bloqueo, o algo así. Sin ver el código, no es posible saber si es 100% seguro – Falmarri