新しいFBSDKで問題が発生しました。ログインメソッドlogInWithReadPermissionsを呼び出そうとすると、次のエラーメッセージが表示されます。
エラー: "canOpenUrl:URL" fbauth2:// "で失敗しましたエラー:"(null) "
Dev.facebookのios9tuto( https://developers.facebook.com/docs/ios/ios9 )の後にconfig.plistファイルがあります。そこで、NSAppTransportSecurityディクショナリとLSApplicationQueriesSchemes配列(文字列「fbauth2」が含まれている)を取得しました。
このエラーを解決する方法を知っていますか?
1] Developer.facebookで認証し、次のようなFacebook IDを生成します:=> 460481580805052
2]ビットコードの設定:ビルド設定からいいえ
3] Plistファイルを設定する
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>fb460481580805052</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>460481580805052</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>akamaihd.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>facebook.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>fbcdn.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
</dict>
</dict>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fbapi20130214</string>
<string>fbapi20130410</string>
<string>fbapi20130702</string>
<string>fbapi20131010</string>
<string>fbapi20131219</string>
<string>fbapi20140410</string>
<string>fbapi20140116</string>
<string>fbapi20150313</string>
<string>fbapi20150629</string>
<string>fbauth</string>
<string>fbauth2 </string>
<string>fb-messenger-api20140430</string>
<string>fb-messenger-platform-20150128</string>
<string>fb-messenger-platform-20150218</string>
<string>fb-messenger-platform-20150305</string>
</array>
4]次のような4つのSdkフレームワークをダウンロードします
=>Bolts.framework
=>FBSDKCoreKit.framework
=>FBSDKLoginKit.framework
=>FBSDKShareKit.framework
それでも問題が解決しない場合は、シミュレーターをリセットしてください。これでうまくいきました。
Google+サインインライブラリでも同じ問題が発生しますが、最新のSDKバージョン4.6.0でFacebookの更新を解決しました。
更新後、次のようにplistキーLSApplicationQueriesSchemes
を変更することを忘れないでください。
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
FacebookからFAQリンクの下部: https://developers.facebook.com/docs/ios/ios9
これは、canOpenURL:呼び出しがfalseを返したことを示すXcode警告です。上記のようにplistのLSApplicationQueriesSchemesエントリを構成している限り、この警告は無視できます。
LSApplicationQueriesSchemesに既にアイテムがある場合は、最初にFacebookアイテムを使用してください。
これで私の問題は解決しました。
同じ問題が発生しましたが、Facebookがインストールされている携帯電話でアプリを実行すると機能しました。シミュレーターで動作しないか、Facebookをインストールする必要があるためかもしれません。誰か他に何か見つけましたか?