我們有集成了 Facebook 登錄功能的 Android 和 iOS 應用程式。最近 Facebook 禁用了我們的應用程式,因為“在登錄期間,您的應用程式崩潰或掛起過度”。然而,問題不在我們的應用程式的源代碼中,而是在我們的 FB 應用程式配置中的某個地方。當我們嘗試在我們的 FB 應用程式中使用作為開發人員或管理員的 Facebook 帳戶登錄時,我們收到來自 FB“不支持的請求”的錯誤訊息。當我們嘗試使用任何其他 Facebook 帳戶(包括 Facebook 測驗帳戶)登錄時,會收到錯誤“應用程式未設定:此應用程式仍處于開發模式......”。請參閱隨附的螢屏截圖。
請注意,我們的應用程式已經上線并且多年來一切正常,直到最近它被禁用。
有誰知道可能是什么問題?


我在 FB 應用程式配置中的“權限和功能”部分注意到的一件事是,“電子郵件”和“公共資料”權限具有“標準訪問權限”。當我嘗試將其更改為“高級訪問”時,它會詢問我的密碼,但訪問級別并沒有改變。它保持“標準訪問”。

我們使用的是最新的 SDK 版本:

uj5u.com熱心網友回復:
在我們的案例中,與 Facebook 的任何交流都無濟于事。他們無法對技術層面做出回應,也無法解釋原因以及他們的錯誤訊息是什么。
所以我們的解決方案是制作一個新的 Facebook 應用程式并設定我們的應用程式以使用這個新的 FB 應用程式 ID 并發布它們。
- (這意味著擁有我們應用程式的所有用戶最終都需要進行更新,以便他們可以使用 Facebook 登錄)
這樣 Android 和 iOS 就可以使用最新的 SDK 12
uj5u.com熱心網友回復:
我也發生了During Login, your app is crashing or hanging excessively,現在它被 Facebook 禁用了,我們仍然無法弄清楚問題的根源是什么
uj5u.com熱心網友回復:
我們通過使用舊版本的 Facebook SDK 解決了這個問題。對于 Android,我們切換回 11.3.0 版。所以在 build.gradle 我們有:
實作'com.facebook.android:facebook-android-sdk:11.3.0'。
對于 iOS,我們不得不切換回 8.2.0 版。所以在 Podfile 中我們有:
吊艙'FBSDKCoreKit','~> 8.2.0'吊艙'FBSDKLoginKit','~> 8.2.0'
問題似乎出在“openId”權限上,Facebook SDK 正在幕后默默地將其添加到請求權限串列中。在 iOS 上,我們發現這是在方法 -(NSDictionary *) logInParametersWithConfiguration: (FBSDKLoginConfiguration FBSDKServerConfiguration) 中的類 FBSDKLoginManager.m 中完成的
我們設法在未安裝 Facebook 應用程式的 Android 設備上測驗問題出在哪里。在這種情況下,當您嘗試登錄時,Facebook SDK 會打開一個瀏覽器并且可以檢查 URL。我們在 URL 路徑引數中看到了“openId”引數。通過 URL 中的該引數,我們收到了來自 Facebook 的錯誤訊息。然后我們從 URL 中洗掉了“openId”引數并重新提交請求,它成功了。這為我們提供了搜索 Facebook SDK 中此“openId”引數添加到請求中的位置以及它首次出現在 SDK 的哪個版本中的線索。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/361357.html
標籤:安卓 Facebook Facebook登入 facebook-android-sdk facebook-ios-sdk
