Facebook4j получить страничку лайков
Я использую facebook4j-core-2.1.0 и пытаюсь получить лайки на странице. Я не знаю, что я делаю неправильно, я новичок в этом.
public static void main(String[] args) throws FacebookException
{
// Generate facebook instance.
Facebook facebook = new FacebookFactory().getInstance();
// access token ...
AccessToken at = new AccessToken(accessTokenString);
// Set access token.
facebook.setOAuthAccessToken(at);
String facebookUserName = "Google";
Page pgId = facebook.getPage(facebookUserName);
Page pgL = facebook.getLikedPage(pgId.getId());
System.out.println("Page Likes :" + pgL);
}
http://www.facebook.com/Google показывает, что у него 18,281,664 лайков, но когда я запустил приведенный выше код, я получил нулевое значение.
Что мне здесь не хватает?
2 ответа
Решение
Я думаю, что вы должны попробовать что-то вроде этого:
String userName = "google";
Page pgId = facebook.getPage(userName);
System.out.println("Page Likes :" + pgId.getLikes());
Надеюсь, поможет.
page.getLikes()
возврат метода null
для меня, поэтому я выбрал это:
RawAPIResponse facebookJson = facebook.callGetAPI("google?fields=engagement");
JSONObject jsonObject = facebookJson.asJSONObject();
String likesCount = ((JSONObject)jsonObject.get("engagement")).getString("count");
System.out.println("likes :" + likesCount);
С помощью Reading
и api v2.6 смотрите, как указать версию api здесь http://facebook4j.org/en/faq.html
Reading pageReading = new Reading();
pageReading.fields("name","id","fan_count");
Page page = facebook.getPage("google", pageReading);
System.out.println("likes :" + page.getFanCount());