我正在实施新的 Facebook SDK 3.0.1,我对与 Session 一起使用有一些疑问。
我创建了一个函数来仅查询用户 ID:
String userID;
public String getUserID(){
final Session session = Session.getActiveSession();
if (session != null && session.isOpened()) {
Request request = Request.newMeRequest(session, new Request.GraphUserCallback() {
@Override
public void onCompleted(GraphUser user, Response response) {
if (session == Session.getActiveSession()) {
if (user != null) {
userID = user.getId();
System.out.println("User ID " + userID); //OK
}
}
}
});
Request.executeBatchAsync(request);
return userID;
}else{
return null;
}
}
问题是当我这样做时,System.out.println("ID is... "+FB.getUserID());
因为只显示:“ID 是......”。
但是内部println
完美显示了id(用户ID XXXXXXXXX)。问题是接收信息的时间。我该如何控制它?