Pregunta

Quiero hacer una aplicación para Android que muestra una lista de aplicaciones (descargado desde el mercado Android) y lanzamientos de la que el usuario selecciona. Por lo que he leído, que tendría que utilizar las intenciones de esta manera:

  Intent intent = new Intent();
  intent.setClassName(packageName, className);
  startActivity(intent);

Sólo quiero ser capaz de poner en marcha las aplicaciones, no una actividad específica que pudieran tener.

Mi pregunta es: ¿cómo podría lanzar estas aplicaciones si no sé su packageName o className? o tal vez, ¿cómo podría llegar a conocer su nombre de clase y packageName, si se trata de una aplicación de código cerrado que no se desarrollan.

Gracias.

¿Fue útil?

Solución

Uso PackageManager para averiguar las aplicaciones instaladas y tal. De hecho, se encuentra este proyecto muestra el libro hace un poco de lo que necesita.

Otros consejos

En resumen, no se puede. Sin embargo, Android le permitirá obtener una bodega de una lista de paquetes instalados junto con sus nombres de clase completos. Salida del código en este enlace para un ejemplo de cómo obtener este paquete para publicar anuncios. Por lo que yo sé, no hay manera de determinar a partir de donde se ha instalado el paquete, pero lo que podría hacer es compararlo con una lista de aplicaciones conocidas para ser preinstalado en el dispositivo y el filtro ésos hacia fuera. La idea es que si no es una aplicación preinstalada, era probable instalado a través del mercado.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top