2016-08-24 98 views
0

幾個小時後,大量的閱讀,實驗和構建,我終於成功登錄到我的演示facebook應用程序。現在我面臨着更大的問題。我無法正確登錄OUT。phonegap facebook插件不能正常註銷

我嘗試了PhoneGap的2個Facebook的插件,並且結果是絕對相同的:

cordova-plugin-facebook4

phonegap-facebook-plugin

要重現,首先我要對我的個人Facebook的個人主頁/設置/應用/ Apps與Facebook登錄,我正在刪除我正在試驗的應用程序。在我的情況下,它被稱爲DemoApp。

比我執行我的移動應用程序下面的代碼:

function logInOutTest() { 
    alert('start login status check'); 
    facebookConnectPlugin.getLoginStatus(function (response) { 
     alert(JSON.stringify(response)); 
     if (response.status === 'connected') { 
      alert('start log OUT'); 
      facebookConnectPlugin.logout(function() { 
       alert('log out called'); 
      }, function(error) { 
       alert(JSON.stringify(error)); 
      }); 
     } 
     else { 
      alert('start log IN'); 
      facebookConnectPlugin.login(["public_profile"], 
       function (userData) { 
        alert("UserInfo: " + JSON.stringify(userData)); 
       }, 
       function (error) { 
        alert(JSON.stringify(error)); 
       } 
      ); 
     } 
    }, function (error) { 
     alert('error: ' + JSON.stringify(error)); 
    }); 
} 

logInOutTest - 第一次迭代日誌: - 啓動登錄狀態檢查 - {狀態: 「未知」} - 開始登錄IN - DemoApp屏幕解釋它會收到我的公開個人資料。繼續 - 的UserInfo:{狀態:「連接的accessToken:有效}

在這裏,在這個階段,我已經記錄並DemoApp我的應用程序與Facebook在登錄再次出現

logInOutTest - 第二迭代日誌: - 啓動登錄狀態檢查 - {狀態: 「連接」 的accessToken:仍然有效} - 啓動註銷 - 註銷所謂

註銷叫正在成功回調。似乎我已成功註銷,但DemoApp仍處於使用Facebook登錄的應用程序!

logInOutTest - 3迭代日誌: - 啓動登錄狀態檢查 - {狀態:「未知」} - 在 啓動日誌 - 登錄錯誤:有一個錯誤記錄你進入這個應用程序。請稍後再試

雖然登出後狀態變爲未知,但我無法再次成功登錄,直到我從Facebook登錄的應用程序中刪除DemoApp。

此外,在Facebook我有這些選項: 從設備登錄 - 是的;客戶端OAuth登錄 - 是; Web OAuth登錄 - 是;嵌入式瀏覽器OAuth登錄 - 是;強制Web OAuth重新認證 - 否;您的應用程序目前正在運行並向公衆開放 - 是的;應用程序不提交,所以我沒有讓我簽字的apk

我相信,Android平臺的設置與Mac上所產生的右鍵散列(所以沒有窗戶的問題,SSL)正確設置鍵,生成時詢問我的密碼。

我覺得我看到了一個帖子裏的Facebook SDK有註銷過程中的一些擴展選項,可以強制註銷,但我沒有看到一個可能改變他們在Facebook上都插件的PhoneGap

+0

_「似乎我已成功註銷,但DemoApp仍處於使用Facebook登錄的應用程序中」_ - 使用Facebook登錄的應用程序不是您目前正在登錄的應用程序的「實時視圖」,而是__你_無法登錄到的應用程序。註銷應用程序不會將其從列表中刪除,僅僅是因爲它不應該這樣做。 – CBroe

+0

嗯,也許你是完全正確的,但是爲什麼我在嘗試再次登錄時收到錯誤? – user732456

+0

嗯,這似乎是一個新問題。很多人最近抱怨。 https://developers.facebook.com/bugs/297086380683342/ – user732456

回答

1

我的問題是在以下螺紋

problem with facebook login from android phone

總之密鑰哈希解決的Facebook頁面上是無效的。如果你從你的個人資料中刪除該應用程序,那麼這個應用程序足夠好奇,它只是一次工作而不是失敗。這是許多人觀察到的行爲,包括我在內。你可以在線程中找到更多信息。

不要按照facebook說明在其頁面上生成散列鍵。他們工作不夠好,或者至少你可以用一個錯誤的鑰匙結束,即使你完全按照他們的意思!

這裏是這樣做的一個工作方式:

Generate Key Hash for Facebook for Android platform

所有學分去安德烈掌狀。