iniciar la aplicación conociendo el nombre del paquete

¿Puede alguien decirme cómo iniciar una nueva aplicación sabiendo solo el nombre del paquete? No tengo información sobre qué actividad es la principal.

Intenta usar PackageManager y getLaunchIntentForPackage()

Simplemente use estas dos líneas siguientes, para que pueda iniciar cualquier aplicación instalada cuyo package name se conozca:

 Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.example.abc"); startActivity( launchIntent ); 

Si no conoce el nombre del paquete de la aplicación que quería lanzar, intente con su mano

 PackageManager pm; pm = getPackageManager(); // get a list of installed apps. packages = pm.getInstalledApplications(0); 

Para obtener más información, consulte este enlace Uso del Administrador de paquetes

Puede obtener el bash de inicio a través de la clase PackageManager :

 PackageManager pm = context.getPackageManager(); Intent launchIntent = pm.getLaunchIntentForPackage("com.example.package"); context.startActivity(launchIntent); 

Tenga en cuenta que getLaunchIntentForPackage devuelve null si no se encuentra el paquete. Por lo tanto, es posible que desee agregar una verificación nula:

 if (launchIntent != null) { context.startActivity(launchIntent); } else { Toast.makeText(context, "Package not found", Toast.LENGTH_SHORT).show(); }