Android Intentions implicites et explicites


Exemple

Une intention explicite est utilisée pour démarrer une activité ou un service dans le même package d'application. Dans ce cas, le nom de la classe visée est explicitement mentionné:

Intent intent = new Intent(this, MyComponent.class);
startActivity(intent);

Toutefois, une intention implicite est envoyée sur le système pour toute application installée sur le périphérique de l'utilisateur et capable de gérer cette intention. Ceci est utilisé pour partager des informations entre différentes applications.

Intent intent = new Intent("com.stackoverflow.example.VIEW");

//We need to check to see if there is an application installed that can handle this intent
if (getPackageManager().resolveActivity(intent, 0) != null){ 
    startActivity(intent);
}else{
    //Handle error
}

Vous trouverez plus de détails sur les différences dans les documents Android Developer: Intent Resolution