2013-10-05 9 views
2

Dans mon widget, lorsque le widget est ouvert, je veux qu'il ouvre une nouvelle page qui affiche des liens vers les applications déjà installées par les utilisateurs. Les utilisateurs doivent pouvoir ajouter et supprimer les liens si nécessaire et les liens seront mis à jour si cette application a été supprimée du périphérique des utilisateurs. J'ai déjà créé la possibilité dans mon widget d'ouvrir une nouvelle classe mais je ne sais pas comment procéder pour créer des liens vers des applications utilisateur. Comment puis-je faire ceci?Comment créer un lien vers des applications utilisateur déjà installées

Répondre

1

Vous devez obtenir l'activité de l'application et la lier avec l'URI.

Par exemple:

Uri.parse("market://details?id=" + facebookpackagename); 

va charger l'application Facebook à partir de votre application.

Essayez ce code:

PackageManager pm = getPackageManager(); 
List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); 
for(ApplicationInfo packageInfo:packages){ 
    if(pm.getLaunchIntentForPackage(packageInfo.packageName) != null){ 
       String currAppName = pm.getApplicationLabel(packageInfo).toString(); 
       //This app is a non-system app 
    } 
    else{ 
     //System App 
    } 
} 
+1

est-il un moyen Je pouvais automatiquement recueillir toutes les activités des applications sur l'appareil, puis faites-le relier à l'URI? Je suis conscient que l'utilisation de PackageManager est la façon dont je voudrais collecter une liste des applications des utilisateurs, mais comment puis-je aller à partir de là? Je suis nouveau à URI si désolé si je demande trop. Je vais commencer une nouvelle question plus tard si nécessaire. – user1628978

+0

J'ai fait des recherches sur les URI et je comprends un peu, mais si je peux clarifier très rapidement, je l'appercrais. Donc, fondamentalement, dans mon Uri.parse, je voudrais indiquer où le paquet est sur le périphérique des utilisateurs, puis où irais-je à partir de là? – user1628978

+0

J'ai mis à jour ma réponse avec un exemple. J'espère que cela vous aidera à trouver la solution. Vous ne demandez pas trop. Je suis content de pouvoir t'aider. – Si8

Questions connexes