1

Facebook SDKからユーザーの詳細を取得したい。私は今、このメソッドを使用しています。ユーザーの ID を返したいのですが、その方法がわかりません。助けてください。

private String getUserId() 
{
    Request.executeMeRequestAsync(Session.getActiveSession(), 
                                  new Request.GraphUserCallback() 
              {
                   @Override
                   public void onCompleted(GraphUser user, Response response) 
                   {
                        FacebookRequestError error = response.getError();
                        GraphObject graphObject = response.getGraphObject();

                        if(graphObject != null) 
                        {
                            if(error == null) 
                            {
                                Preferences.saveUserInfo(user.getId(),
                                                         FetchGroups.this);
                                Preferences.saveUserName(user.getName(),
                                                         FetchGroups.this);

                                return user.getId();
                            }
                         }
                    }
              });
}

これにより、onCompletd メソッドの戻り値の型が void であるというエラーが発生します。前もって感謝します

4

2 に答える 2

1

いいえ、そのように戻ることはできません。グローバル変数を作成して割り当て、後で使用します。

public class SomeClass  {
 String useid;

--

     Request.executeMeRequestAsync(Session.getActiveSession(), new Request.GraphUserCallback() {

                @Override
                public void onCompleted(GraphUser user, Response response) {
                    FacebookRequestError error = response.getError();
                    GraphObject graphObject = response.getGraphObject();
                    if(graphObject != null) {
                        if(error == null) {
                            Preferences.saveUserInfo(user.getId(), FetchGroups.this);
                            Preferences.saveUserName(user.getName(), FetchGroups.this);
                             userid = user.getId();
                        }
                    }
                }
            });
于 2013-07-02T06:46:35.113 に答える