2012-12-01 25 views
0

我使用春季社交來獲取所有我的朋友的列表。然而,似乎我可以從facebook圖表API獲得的朋友數量與Facebook在我的個人資料上報告的朋友數量不同。facebook用戶可以選擇退出圖表api嗎?

根據臉書我有175個朋友。使用春季社交臉書我只能看到156個朋友。我知道春季社交臉書的分頁問題,​​所以我使用下面的代碼。

private Map<String, FacebookProfile> getFacebookProfiles() 
{ 
    Connection<Facebook> connection = connectionRepository.findPrimaryConnection(Facebook.class); 
    FriendOperations friendOperations = connection.getApi().friendOperations(); 

    // FindFriendProfes() only returns 100 friends, need to use batching to get all friends 
    List<FacebookProfile> friendProfiles = new ArrayList<>(250); 
    final int batchSize = 100; 
    int offset = 0; 
    List<FacebookProfile> batch = friendOperations.getFriendProfiles(offset, batchSize); 
    do 
    { 
     friendProfiles.addAll(batch); 
     offset = offset + batchSize; 
     batch = friendOperations.getFriendProfiles(offset, batchSize); 
    } while (batch.size() != 0); 

    Map<String, FacebookProfile> result = new HashMap<>(friendProfiles.size()); 
    for (FacebookProfile facebookProfile : friendProfiles) 
    { 
     result.put(facebookProfile.getId(), facebookProfile); 
    } 

    return result; 
} 

要麼存在彈簧社會facebook集成bug或者有Facebook用戶說,他們不應該作爲圖形API調用的一部分返還的方式。

facebook用戶可以選擇退出圖形api的朋友嗎?

回答

1

是確切的說,Facebook用戶可以通過將他們的隱私設置>廣告,應用程序和網站>編輯設置>人如何把你的信息,以應用他們使用

那些朋友誰編輯那些退出的第三方應用程序設置不會顯示在您的圖形API調用中。

相關問題