0

現在、GraphUser api オブジェクトを介してユーザーの電子メールを取得しようとしているときに問題が発生しています。

名、姓、その他すべてを取得できましたが、電子メールは取得できませんでした

私は、ユーザーの電子メール (xxx@facebook.com ではなく、facebook へのログイン電子メール) を取得するための許可を追加する必要があることを調査しました。私は立ち往生しています!Androidでこれを行うにはどうすればよいですか?

private class FacebookloginDelegateImpl extends FacebookloginDelegate
{
    /*
     * Optional callback method
     */ 
    protected void onCompletedProgress(GraphUser user,
            Response response) 
    {
        Log.d("FB UserID:", user.getId());
        Log.d("FB FirstName:", user.getFirstName());
        Log.d("FB LastName:", user.getLastName());
        Log.d("Object:", user.toString());
        Log.d("Response:", response.toString());
        //Log.d("FB Email:", (String) user.asMap().get("email"));

        String userID = user.getId();
        String firstname = user.getFirstName();
        String lastname = user.getLastName();
        String email= "";
        try {
            email = user.getInnerJSONObject().getString("email");
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        Log.d("FB Email:", email);

        LoginActivity.this.requestFacebookLogin(userID, firstname, lastname);

        //String stringData = "{\"ID\":\""+user.getId()+"\",\"Name\":\""+user.getName()+"\"}";  
    }
4

1 に答える 1

0

ユーザーがデフォルトの facebook 以外のメールを設定したことは確かですか? Facebook は全員に自分のメールアドレスを持たせることを強制しており、別のメールアドレスを取得するにはログインして変更する必要があります。

于 2013-07-11T04:00:12.517 に答える