我深化发展,使用此应用程式:https://developers.facebook.com/docs/android/native-login/Facebook的会议取消对话框
我跟随Facebook的开发教程,所以基本上我有会话确认,它打开的对话框中,我试图让取消事件(当用户取消Facebook对话框时),但我没有办法。
也许你可以帮忙。
感谢
编辑:其实,即使我点击取消按钮,我仍然收到GraphUser正确。这很奇怪。
我深化发展,使用此应用程式:https://developers.facebook.com/docs/android/native-login/Facebook的会议取消对话框
我跟随Facebook的开发教程,所以基本上我有会话确认,它打开的对话框中,我试图让取消事件(当用户取消Facebook对话框时),但我没有办法。
也许你可以帮忙。
感谢
编辑:其实,即使我点击取消按钮,我仍然收到GraphUser正确。这很奇怪。
借助Android SDK 3.5,我通过异常取消的事件,如果状态更改回调与FacebookOperationCanceledException或FacebookAuthorizationException的情况下,它的取消事件:
private void onSessionStateChange(Session session, SessionState state, Exception exception) {
if (exception instanceof FacebookOperationCanceledException || exception instanceof FacebookAuthorizationException) {
// Cancelled by user, show alert
new AlertDialog.Builder(this).setTitle(R.string.cancelled).setMessage(R.string.permission_not_granted).setPositiveButton(R.string.ok, null).show();
} else {
Session session = Session.getActiveSession();
if ((session != null && session.isOpened())) {
// Session ready
}
}
}
private Session.StatusCallback callback = new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
onSessionStateChange(session, state, exception);
}
};
它的工作好了
其实,不,它不工作。我总是进入if(例外...)。从来没有在其他地方。 –
由于您总是进入if,我们来检查它是否是FacebookAuthorizationException但不是FacebookOperationCanceledException? 您可能没有在您的FB应用程序设置中正确设置Key Hashes。 –
正确地开始步骤4和5: https://developers.facebook.com/docs/android/getting-started/facebook-sdk-for-android/ –
将Session.StatusCallback添加到打开的请求中,您可以在其中检查SessionState。
new Session.StatusCallback() {
@Override
public void call(Session session, SessionState state, Exception exception) {
//check state
}
};
他的问题并不完全相同。我实际上遇到了处理本地对话框上的“取消”按钮的问题。 –
我做了一个编辑,可以帮助你回答我的问题 –
讲起这里:[链接](http://chat.stackoverflow.com/rooms/36809/facebook-session-cancel-dialog)。 – Vikram