iOS と Android の両方で実行される Phonegap アプリがあります。このアプリには、数日前まで機能していた Facebook ログイン機能があります。一部のベータ テスターから、「操作を完了できませんでした com.facebook.sdk エラー 2」エラーが報告されました。これらのテスターのデバイスはさまざまです: iPhone 5、iPhone 4s、iPod Touch、iOS 5.1.1、および iOS 6.0。
最新の Facebook SDK と Phonegap Facebook ログイン プラグイン ( https://github.com/davejohnson/phonegap-plugin-facebook-connect/ ) を使用します。
いくつかの調査を行ったところ、このエラーが発生する可能性がある次の理由が見つかりました。
- info.plist ファイルの BundleIdentifier と BundleURLName が、Facebook アプリの設定のネイティブ iOS アプリのバンドル ID と一致しません。
- アプリはまだサンドボックス モードです
- アプリは Facebook の設定で無効になっています (デバイスの設定 -> Facebook -> これらのアプリにアカウントの使用を許可)。
- iOS 6.0 では、読み取りと書き込みの許可を同時に要求することはできません (私にこの権利があるかどうかはわかりません)。
次の場合があります。
- BundleIdentifier と BundleURLName が一致します。
- アプリはサンドボックス モードではありません。
- すべてのユーザーの [これらのアプリによるアカウントの使用を許可する] にアプリが表示されない
- Phonegap プラグインのビルダーは、iOS 6.0 パーミッションのバグを修正したと言われています ( https://github.com/davejohnson/phonegap-plugin-facebook-connect/pull/216 )
これは非常に一貫性のないバグです (私の場合)。「これらのアプリにアカウントの使用を許可する」でアプリをオフにした場合にのみ、自分でエラーを再現できます (私の場合、アプリはそこにリストされています) が、アプリを再度許可することでエラーを簡単に修正できます。現時点では、ほとんどのテスターにこのバグは (もう) ありませんが、エラーは iPod に残っています (アプリが [これらのアプリにアカウントの使用を許可する] にも表示されていません)。
なぜ私がこのバグを抱えているのか、誰にも分かりますか?