簡體   English   中英

Facebook登錄錯誤,IOS 9,Swift

[英]Error in facebook login, IOS 9, Swift

我正在嘗試在我的應用程序中實現Facebook登錄。 但是出現錯誤。 我的info.plist代碼是:

   <plist version="1.0">
<dict>
<key>LSApplicationQueriesSchemes</key>
<array>
    <string>fbapi</string>
    <string>fb-messenger-api</string>
    <string>fbauth2</string>
    <string>fbshareextension</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
    <key>NSExceptionDomains</key>
    <dict>
        <key>facebook.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>fbcdn.net</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
        <key>akamaihd.net</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSExceptionRequiresForwardSecrecy</key>
            <false/>
        </dict>
    </dict>
</dict>
<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>fb_APP_ID</string>
        </array>
    </dict>
</array>
<key>FacebookAppID</key>
<string>APP_ID</string>
<key>FacebookDisplayName</key>
<string>APP_Name</string>
<key>CFBundleDevelopmentRegion</key>
<string>en</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>APPL</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1</string>
<key>LSRequiresIPhoneOS</key>
<true/>
<key>UILaunchStoryboardName</key>
<string>LaunchScreen</string>
<key>UIMainStoryboardFile</key>
<string>Main</string>
<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>armv7</string>
</array>
<key>UISupportedInterfaceOrientations</key>
<array>
    <string>UIInterfaceOrientationPortrait</string>
    <string>UIInterfaceOrientationLandscapeLeft</string>
    <string>UIInterfaceOrientationLandscapeRight</string>
</array>

而且我收到此錯誤:

2015-10-24 11:38:11.177 APP_Name[3553:150778] -canOpenURL: failed for URL: "fbauth2:/" - error: "(null)"
2015-10-24 11:38:11.190 APP_Name[3553:150778] -canOpenURL: failed for URL: "fbauth2:/" - error: "(null)"

Facebook登錄正在發生,但也出現此錯誤。 有什么辦法解決這個問題? 我已經用Google搜索了很多,無法解決。 我正在使用Parse和Facebook。 謝謝你的時間。

我得出了相同的結論,但是在出現此錯誤消息的過程中還有其他問題,可能對其他人有幫助-請在此處共享。

我將Parse v1.9.0FBSDK v4.7Xcode 7.0.1一起使用 我下面羅布Percivals iOS9和斯威夫特2課程udemy.com (第131講)。

他使用過早期版本的sdks-壓縮后的代碼可以正常工作,但是我遇到了fbauth2錯誤。 當我嘗試使用最新的SDK時,我什至無法理解錯誤。

Parse v1.9.0下載的文件丟失: ParseStarterProject-Bridging-Header.h-如果沒有該文件,則所有導入語句均無效

Parse AppDelegate告訴您按照Facebook的說明在FB網站上進行所有設置並填充您的info.plist文件,然后在缺少的頭文件中取消注釋。

我從頭開始創建了ParseStarterProject-Bridging-Header.h ,並將導入語句放入PFFacebookUtilsV4 / PFFacebookUtils.hFBSDKCoreKit / FBSDKCoreKit.h

還要注意,當您解壓縮Parse v1.9.0入門項目時,它不包含所有框架,因此請確保解壓縮Parse Library zip,然后將其拖到您的項目中。 Facebook的同上。

在這一點上,我認為一切都會正常進行,但沒有成功。 仍然有很多紅色錯誤消息。 當我查看“問題導航器”時 ,找不到FBSDKParseFacebookUtilsV4或我創建的頭文件。 它們都在導航窗格中,所以我完全感到困惑。

關鍵/解決方案在Targets Build Settings中

在搜索路徑下: 始終搜索用戶路徑 -我將其設置為YES-默認為NO

框架搜索路徑 -您應該有一個指向項目的指針,但需要在FBSDK位置添加一個。 如果遵循建議,則應為/ Users // Documents / FacebookSDK

Swift編譯器-代碼生成:

Install Objective-C Compatibility Header = YES

Objective-C Bridging Header = ParseStarterProject/ParseStarterProject-Bridging-Header.h

花了我一段時間才能在這里獲得正確的語法-如果您使用了ParseStarterProject並將頭文件與AppDelegateViewController放在同一組中-上面的內容應該對您有用

解析提供的用於取消注釋的默認PFFacebookUtils.initializeFacebook()行對我不起作用-一直顯示錯誤,因此我替換為Facebook提供的測試代碼的變體。 像魅力一樣工作-仍然出現fbauth2錯誤,但現在進入了fb登錄屏幕並已連接。 那是我發現fbauth2錯誤消息沒有負面影響的時候-您可以忽略它們:)

如果您一直在努力進行Parse&FB集成-希望對您有所幫助!

答:您可以忽略該消息...

@喬納森·霍恩比(Jonathan Hornby)@ joan16v:我遇到了同樣的問題,但是將代碼放在操作按鈕中(而不是在viewDidLoad方法中)對我有用

順便說一句:您不再需要橋接頭

僅當您使用模擬器時才出現此錯誤消息,而在使用設備時則不會出現。

由於您的info.plist正常,因此您可以忽略它。

檢查以下答案: iOS 9 Facebook登錄模擬器-canOpenURL:URL失敗:“ fbauth2:///”-錯誤:“(null)”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM