Android a des amis Facebook qui ont téléchargé une application

J'utilise le Facebook Android SDK. Existe-t-il un moyen simple d'obtenir les amis d'un utilisateur qui ont téléchargé l'application? Par exemple, l'application Draw Something implémente ceci. Je ne peux pas trouver d'informations sur ce sujet

Je suppose que si cela était possible, des informations supplémentaires seraient nécessaires dans le httppost pour accéder à cette information.

  • Comment sortir de Twitter dans le navigateur de l'application dans Android?
  • Android incapable d'implémenter un commentaire Facebook dans une vue web en raison du navigateur par défaut
  • Est-ce que la "étiquette" d'une vue est restaurée lorsque l'activité dont la mise en page contient la vue est recréée?
  • Android Youtube L'activité du joueur Api finit et crée
  • Comment détecter l'événement de déconnexion avec l'API Android Facebook v4?
  • Genymotion impossible à charger du moteur VirtualBox sur Windows 10
  • 3 Solutions collect form web for “Android a des amis Facebook qui ont téléchargé une application”

    * Remarque: depuis la version 3.14, moi / amis ne retournerai que des amis qui utilisent également l'application, alors la mise en œuvre est obsolète. Consultez les nouvelles API «Amis invitables» ou «Taggable Friends» pour les solutions de rechange.

    L'utilisation du nouveau SDK Facebook pour Android (3.0) est très facile d'obtenir la liste d'amis de votre utilisateur. Voici le code:

    private void requestFacebookFriends(Session session) { Request.executeMyFriendsRequestAsync(session, new Request.GraphUserListCallback() { @Override public void onCompleted(List<GraphUser> users, Response response) { // TODO: your code for friends here! } }); } 

    Néanmoins, pour que les amis de l'utilisateur qui utilisent votre application Facebook soient un peu compliqués (en raison de la documentation de l'API de Facebook). Mais oui, c'est possible .

    Tout d'abord, créez votre demande:

     private Request createRequest(Session session) { Request request = Request.newGraphPathRequest(session, "me/friends", null); Set<String> fields = new HashSet<String>(); String[] requiredFields = new String[] { "id", "name", "picture", "installed" }; fields.addAll(Arrays.asList(requiredFields)); Bundle parameters = request.getParameters(); parameters.putString("fields", TextUtils.join(",", fields)); request.setParameters(parameters); return request; } 

    Notez que vous devez insérer le champ «installé» dans votre demande. Je demande le chemin de l'image utilisateur avec la même demande. Vérifiez vos possibilités ici .

    Ensuite, vous pouvez utiliser le code ci-dessus pour créer votre demande et ensuite obtenir vos amis:

     private void requestMyAppFacebookFriends(Session session) { Request friendsRequest = createRequest(session); friendsRequest.setCallback(new Request.Callback() { @Override public void onCompleted(Response response) { List<GraphUser> friends = getResults(response); // TODO: your code here } }); friendsRequest.executeAsync(); } 

    Notez que l'utilisation de cette demande générique, vous ne recevez pas une liste GraphUser comme réponse. Vous aurez besoin du code suivant pour obtenir la réponse en tant que liste GraphUser:

     private List<GraphUser> getResults(Response response) { GraphMultiResult multiResult = response .getGraphObjectAs(GraphMultiResult.class); GraphObjectList<GraphObject> data = multiResult.getData(); return data.castToListOf(GraphUser.class); } 

    Maintenant, vous pouvez utiliser la liste d'amis de votre utilisateur, avec les informations si chacun de vos amis utilise votre application Facebook:

     GraphUser user = friends.get(0); boolean installed = false; if(user.getProperty("installed") != null) installed = (Boolean) user.getProperty("installed"); 

    Je l'ai mis en œuvre de cette façon

     Bundle params = new Bundle(); params.putString("fields", "name, picture, location, installed"); 

    Et lors de l'affichage des éléments de la liste, dans la méthode getView (), j'ai fait cela

     boolean b = jsonObject.getBoolean("installed"); if (b){ Log.d("VIVEK",jsonObject.getString("name")); } 

    J'espère que cette publication vous aidera: Comment puis-je faire en sorte que mes amis utilisent mon application Facebook avec un graphique api asp.net

    Selon le SDK de Facebook , le champ has_added_app est obsolète et vous devez utiliser is_app_user

    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.