我深化發展,使用此應用程式: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