Comment puis-je lancer une nouvelle application en utilisant son nom de paquet ? Je n'ai pas d'informations sur l'activité principale.
Réponses
Trop de publicités?Il suffit d'utiliser ces deux lignes suivantes, pour pouvoir lancer n'importe quelle application installée dont le nom du paquetage est connu :
Intent launchIntent = getPackageManager().getLaunchIntentForPackage("com.example.abc");
startActivity( launchIntent );
Si vous ne connaissez pas le nom du paquet de l'application que vous voulez lancer, essayez de le faire :
PackageManager pm;
pm = getPackageManager();
// get a list of installed apps.
packages = pm.getInstalledApplications(0);
Pour plus d'informations, consultez ce lien : Utilisation du gestionnaire de paquets .
Essayez d'utiliser PackageManager
y getLaunchIntentForPackage()
Vous pouvez obtenir l'intention de lancement par le biais du PackageManager
classe :
PackageManager pm = context.getPackageManager();
Intent launchIntent = pm.getLaunchIntentForPackage("com.example.package");
context.startActivity(launchIntent);
Notez que getLaunchIntentForPackage
renvoie null si le paquet n'est pas trouvé. Vous pourriez donc vouloir ajouter une vérification de nullité :
if (launchIntent != null) {
context.startActivity(launchIntent);
} else {
Toast.makeText(context, "Package not found", Toast.LENGTH_SHORT).show();
}
- Réponses précédentes
- Plus de réponses