En utilisant restFB , j'ai fait ce qui suit (merci Igy / Alex pour les conseils). Notez que Facebook renvoie un tableau d'identifiants d'amis avec "installed" = true si l'utilisateur est installé (comme on peut le voir ici ).
Commencez par étendre la classe User, en ajoutant un installed
champ:
import com.restfb.Facebook;
import com.restfb.types.User;
public class InstalledUser extends User {
@Facebook
private boolean installed;
public InstalledUser() {
}
public boolean getInsatlled() {
return installed;
}
}
Ensuite, en utilisant DefaultFacebookClient:
FacebookClient facebook = new DefaultFacebookClient(pFacebookAccessToken);
Connection<InstalledUser> installedFacebookUsers = facebook.fetchConnection("/" + pFacebookId + "/friends", InstalledUser.class, Parameter.with("fields", "installed"));
for (List<InstalledUser> friends : installedFacebookUsers) {
for (InstalledUser friend : friends) {
if (friend.getInsatlled()) {
// Add friend.getId() to a list of ID, or whatever
}
}
}