2015-04-07 49 views
0

我试图让所有朋友的用户ID。但我不明白如何做分页。这是我的代码:Facebook4j分页,以获得所有朋友

ResponseList<Friend> results = facebook.getFriends(USER_ID); 
ArrayList<String> friendList = new ArrayList<String>(); 

// Getting Next page 
Paging<Friend> paging1 = results.getPaging(); 
for (int i = 0; i < results.size(); i++) { 
    Friend f = results.get(i); 
    String id = f.getId().toString(); 
    friendList.add(id); 
    System.out.println(id); 
} 

ResponseList<Friend> page2 = facebook.fetchNext(paging1); 
for (int i = 0; i < page2.size(); i++) {  
    System.out.println(page2.size()); 
    Friend f = page2.get(i); 
    String id = f.getId().toString(); 
    friendList.add(id); 
    System.out.println(id); 
} 

有了这段代码,我只能获得前9个朋友的ID。看起来第二个分页不会检索任何东西。怎么了?

+0

将'System.out.println(page2.size());'放到循环之前以便遍历第二个页面会更有用。至少这样,你会看到第2页有多大。此外,不知道为什么你不使用'for(Friend f:page2)',这是更可读和更少的代码。 – Steve

回答

2

看起来不像分页是你的问题,如果你只有9个ID。最有可能的只有9位朋友授权该应用程序。更多信息:Get ALL User Friends Using Facebook Graph API - Android

+0

如果我试图获得我的朋友与facebook的图形API的资源管理器,第一次分页显示只有9个朋友和分页链接 – ntrax

+1

如果你在api浏览器中使用分页链接会发生什么?你有更多的朋友吗? – luschn

+0

不,我只得到那个朋友...... – ntrax

相关问题