2010-11-21 22 views
5

Je sais que j'ai vu une façon d'appeler une intention, et si elle n'existe pas, la fonction redirigera vers le marché pour télécharger l'application qui a l'intention.Télécharger l'application si l'intention n'est pas installée

En ce moment je vérifie si l'Intention existe mais je ne sais pas comment pointer l'utilisateur vers la ressource à télécharger.

Merci à l'avance

Répondre

19

Pour vérifier si une intention est disponible:

String intentToCheck = "com.google.SCAN"; //can be any other intent 
final PackageManager packageManager = getPackageManager(); 
final Intent intent = new Intent(intentToCheck); 
List list = packageManager.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); 
final boolean isAvailable = list.size() > 0; 

Pour ouvrir Google via le marché Intention:

Intent marketIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("market://search?q=pname:com.google.scan")); 
startActivity(marketIntent); 
+0

La deuxième partie est ce que je voulais dire. –

+3

utilisez 'Uri.parse (" market: // details? Id = Jane

1

Je n'ai pas fait cela avant, mais en théorie, il est juste un autre appel intention avec un drapeau de vue et l'URI market://... pointant vers l'application.