在Android中使用Facebook SDK 3.0进行Facebook身份验证后无法获取用户电子邮件

在Android中使用Facebook SDK 3.0进行Facebook身份验证后无法获取用户电子邮件,android,facebook,email,Android,Facebook,Email,我在我的android应用程序中使用了以下Facebook登录代码。在登录权限屏幕后,我没有请求电子邮件权限,而且我也没有在onSessionStateChange方法中收到电子邮件。我的代码有任何问题吗..请帮我提前感谢 OpenRequest OpenRequest=新OpenRequestthis;列表 readPermissions=新建ArrayList; readPermissions.addemail; openRequest.setPermissionsreadPermissio

我在我的android应用程序中使用了以下Facebook登录代码。在登录权限屏幕后,我没有请求电子邮件权限,而且我也没有在onSessionStateChange方法中收到电子邮件。我的代码有任何问题吗..请帮我提前感谢

OpenRequest OpenRequest=新OpenRequestthis;列表 readPermissions=新建ArrayList; readPermissions.addemail; openRequest.setPermissionsreadPermissions;openRequest .setLoginBehavior会话LoginBehavior.SSO_与_回退;mCurrentSession.openForReadopenRequest

Logcat

03-15 14:02:28.804: E/signInWithFacebook(1168): ------->>1.1
03-15 14:02:28.914: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:02:28.994: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:02:29.434: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:02:29.494: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:02:29.654: D/FacebookSDK.WebDialog(1168): Webview loading URL: https://m.facebook.com/dialog/oauth?type=user_agent&redirect_uri=fbconnect%3A%2F%2Fsuccess&display=touch&client_id=366325773475096
03-15 14:02:33.424: D/dalvikvm(1168): GC_CONCURRENT freed 133K, 3% free 9854K/10119K, paused 6ms+6ms
03-15 14:02:33.865: D/FacebookSDK.WebDialog(1168): Redirect URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:02:33.874: D/FacebookSDK.WebDialog(1168): Webview loading URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:02:42.003: D/FacebookSDK.WebDialog(1168): Webview loading URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:04:11.173: W/webcoreglue(1168): updateFrameCache: pending style recalc, ignoring.
03-15 14:04:53.154: D/FacebookSDK.WebDialog(1168): Webview loading URL: https://m.facebook.com/login.php?fbconnect=1&skip_api_login=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26fbconnect%3D1%26from_login%3D1&refsrc=http%3A%2F%2Fm.facebook.com%2Flogin.php&app_id=366325773475096&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&refid=9
03-15 14:04:57.024: D/FacebookSDK.WebDialog(1168): Redirect URL: https://m.facebook.com/dialog/permissions.request?_path=permissions.request&app_id=366325773475096&client_id=366325773475096&redirect_uri=fbconnect%3A%2F%2Fsuccess&display=touch&type=user_agent&fbconnect=1&from_login=1&refid=9&_rdr
03-15 14:04:57.024: D/FacebookSDK.WebDialog(1168): Webview loading URL: https://m.facebook.com/dialog/permissions.request?_path=permissions.request&app_id=366325773475096&client_id=366325773475096&redirect_uri=fbconnect%3A%2F%2Fsuccess&display=touch&type=user_agent&fbconnect=1&from_login=1&refid=9&_rdr
03-15 14:04:57.114: W/chromium(1168): external/chromium/net/spdy/spdy_session.cc:1058: [0315/140457:WARNING:spdy_session.cc(1058)] Received data frame for invalid stream 1
03-15 14:05:19.424: D/dalvikvm(1168): GC_CONCURRENT freed 353K, 5% free 9890K/10375K, paused 6ms+24ms
03-15 14:05:39.163: D/FacebookSDK.WebDialog(1168): Webview loading URL: https://m.facebook.com/dialog/permissions.request
03-15 14:05:40.604: D/FacebookSDK.WebDialog(1168): Redirect URL: fbconnect://success#access_token=AAAFNK92ZAnRgBAGkKgfOETJuxdfpZAta6DAiZCM1RNZCLzgq6XNhDNG9dPAtx0bZBskLW6jtdhx7cDi1ENlmfiBjbdEzuZC5s8933VlcE0cQZDZD&expires_in=5184000&code=AQCo4tQ-KYAZVHSkZZlECsJADz5SnYH4PSlJROB6LQL2OssTrtOFYQc80znkbJFX0zFYS73qFHF-w52QJvFVajwOqmlbe8UcIslhggk77b63IILQ-pKNgdUuxzZbXRQQvd31kAoB7CRSeW9ImNPPwPD2-lI_l2UlyA6sbtRERMzZncHwKoKyWnwsfsGFiAh6CPyVPoFFYUAWrTVK5pTsp8EB
03-15 14:05:41.313: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:05:41.483: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:05:41.873: E/signInWithFacebook(1168): ------->>1.1
03-15 14:05:41.873: E/OnsessionStateChange(1168): ------
03-15 14:05:41.873: E/OnsessionStateChange(1168): --State opened----
03-15 14:05:42.913: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:05:43.083: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:05:43.324: D/FacebookSDK.WebDialog(1168): Webview loading URL: https://m.facebook.com/dialog/oauth?display=touch&client_id=366325773475096&scope=email&type=user_agent&redirect_uri=fbconnect%3A%2F%2Fsuccess
03-15 14:05:43.423: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:05:43.483: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:05:43.743: D/FacebookSDK.WebDialog(1168): Redirect URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26perms%3Demail%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:05:43.933: I/dalvikvm(1168): threadid=3: reacting to signal 3
03-15 14:05:44.045: I/dalvikvm(1168): Wrote stack traces to '/data/anr/traces.txt'
03-15 14:05:44.283: D/FacebookSDK.WebDialog(1168): Webview loading URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26perms%3Demail%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:05:45.323: D/dalvikvm(1168): GC_CONCURRENT freed 293K, 5% free 10019K/10439K, paused 6ms+7ms
03-15 14:05:47.924: D/FacebookSDK.WebDialog(1168): Webview loading URL: http://m.facebook.com/login.php?app_id=366325773475096&skip_api_login=1&cancel=fbconnect%3A%2F%2Fsuccess%3Ferror_reason%3Duser_denied%26error%3Daccess_denied%26error_description%3DThe%2Buser%2Bdenied%2Byour%2Brequest.&fbconnect=1&next=https%3A%2F%2Fm.facebook.com%2Fdialog%2Fpermissions.request%3F_path%3Dpermissions.request%26app_id%3D366325773475096%26client_id%3D366325773475096%26redirect_uri%3Dfbconnect%253A%252F%252Fsuccess%26display%3Dtouch%26type%3Duser_agent%26perms%3Demail%26fbconnect%3D1%26from_login%3D1&rcount=1&_rdr
03-15 14:06:01.764: W/myConsultant(1168): 100003532434600 Nest Nest {"hometown":{"id":"111955358823868","name":"Thiruvananthapuram, Kerala"},"location":{"id":"111955358823868","name":"Thiruvananthapuram, Kerala"},"locale":"en_US","link":"http:\/\/www.facebook.com\/iosdev.nest","updated_time":"2013-03-15T08:23:37+0000","id":"100003532434600","languages":[{"id":"106059522759137","name":"English"},{"id":"112969428713061","name":"Hindi"},{"id":"105692839465644","name":"Malayalam"}],"first_name":"Nest","timezone":5.5,"username":"iosdev.nest","bio":"Developer","verified":true,"name":"Nest Dev","favorite_teams":[{"id":"107844962567241","name":"Chennai Super Kings"}],"last_name":"Dev","gender":"male","favorite_athletes":[{"id":"113041012044041","name":"P. T. Usha"}]}
03-15 14:06:01.764: D/user email(1168): nulllinkhttp://www.facebook.com/iosdev.nest

使用Facebook的LoginButton,并添加一个钩子来拦截用户信息,而不是提交单独的ME请求:

// Intercept the facebook user returned from login
facebookLoginButton.setUserInfoChangedCallback(new LoginButton.UserInfoChangedCallback() {

    @Override
    public void onUserInfoFetched(GraphUser user) {
        mFacebookUser = user;

        if (user != null) {
            LogUtils.LOGFB(TAG, "Got a Facebook user: " + user.getFirstName() +
                    " " + user.getLastName() + ", email: " + user.getProperty("email"));
        }
        else {
            LogUtils.LOGFB(TAG, "No Facebook user");
        }
    }
});
您还需要添加电子邮件作为额外的阅读权限:

facebookLoginButton.setReadPermissions(Arrays.asList(
        "email", "user_birthday", ...));

如果可能的话,把你的日志放在here@kirtiavaiya:Logcat已添加。您必须为此授予FB权限。你听说了吗?或者我应该给你详细解释一下吗?@Anupam你能解释一下吗?请看看我问的这个问题。我通过使用Facebook登录按钮解决了这个问题。自定义按钮给了我问题。希望这个答案能对你有所帮助。
facebookLoginButton.setReadPermissions(Arrays.asList(
        "email", "user_birthday", ...));