Facebook SDK:app未注册为URL Scheme

L. *_*ins 74 facebook url-scheme ios xamarin

我正在使用此处Facebook SDK找到的,并且正在尝试提供的示例(在文件夹中).FacebookiOSSample

如果我只是AppId用我的具体替换这里AppId,那么我就不能再分享了.(我在AppDelegate文件和info.plist文件中都替换了它).我现在收到以下错误:

FBSDKLog:无效使用FBAppCall,fb****未注册为URL方案.你在plist中设置了'FacebookUrlSchemeSuffix'吗?

否则,这适用于样本的原始内容AppId,该内容指向某个名称IFaceTouch.

我的应用程序设置有什么问题,如何注册我的AppId

Raf*_*fAl 204

请遵循以下三个步骤:

  1. 使用字符串值创建名为FacebookAppID的密钥,并在其中添加应用程序ID.
  2. 使用字符串值创建名为FacebookDisplayName的键,并添加您在App Dashboard中配置的显示名称.
  3. 创建一个名为URL类型的数组键,其中包含一个名为URL Schemes的数组子项.使用前缀为fb的应用ID为单个项目.这用于确保应用程序将接收基于Web的OAuth流的回调URL.

完成的.plist看起来应该是这样的:

在此输入图像描述

来源链接:

  • 大多数情况下可能会导致类似错误消息的拼写错误,即使错误输入上/下案例的错误字母.仔细检查一下! (3认同)
  • @BootMaker第二个 - 我没有工作,因为我错误地使用了"URL方案"而不是"URL方案". (3认同)

小智 20

在原始键和值方面,您应该有CFBundleURLTypes和CFBundleURLSchemes

在原始键和值方面,您应该有CFBundleURLTypes和CFBundleURLSchemes.希望有所帮助!


Avi*_*Net 16

信息下方还有另一部分 - 网址类型

检查URL Schemes字段下的值是否与上面属性列表中URL类型 - > URL Schemes中的值匹配.(还匹配FacebookAppID)

网址类型


Jef*_*nBe 9

适用于iOS 9

如果您有错误:'LSApplicationQueriesSchemes'

基于熊与我的回答,你还必须添加这些行:

<key>LSApplicationQueriesSchemes</key>
<array>
   <string>fbauth2</string>
</array>
Run Code Online (Sandbox Code Playgroud)

看到这个.

您最终应该在.plist文件末尾添加这些行:

<key>CFBundleURLTypes</key>
    <array>
        <dict>
            <key>CFBundleURLSchemes</key>
            <array>
                <string>fb2R3234544534554</string>
            </array>
        </dict>
    </array>
    <key>FacebookAppID</key>
    <string>2R3234544534554</string>
    <key>FacebookDisplayName</key>
    <string>stevejeff</string>
    <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSExceptionDomains</key>
        <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>
            <key>akamaihd.net</key>
            <dict>
                <key>NSIncludesSubdomains</key>
                <true/>
                <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                <false/>
            </dict>
        </dict>
    </dict>
    <key>LSApplicationQueriesSchemes</key>
    <array>
        <string>fbauth2</string>
    </array>
    </dict>
    </plist>
Run Code Online (Sandbox Code Playgroud)

*如果您使用的是SDK的v4.6.0或更高版本,则只需添加:*(感谢 mohsinj)

   <key>LSApplicationQueriesSchemes</key>
      <array>
        <string>fbapi</string>
        <string>fb-messenger-api</string>
        <string>fbauth2</string>
        <string>fbshareextension</string>
   </array>
Run Code Online (Sandbox Code Playgroud)


Sal*_*man 7

如果您使用多个社交身份验证,则放置 URL 架构,如下所示。

<key>CFBundleURLTypes</key>
<array>
  <dict>
  <key>CFBundleURLSchemes</key>
  <array>
    <string>fb7876940600009</string>
   <string>com.googleusercontent.apps.76235222224-hfvusdel7p8eavfvn</string>
  </array>
  </dict>
</array>
<key>FacebookAppID</key>
<string>7876983017</string>
<key>FacebookClientToken</key>
<string>e29fbf1f15a5b5be028dcb</string>
<key>FacebookDisplayName</key>
<string>xdfxdffmate</string>
Run Code Online (Sandbox Code Playgroud)


ZAF*_*007 5

转到此链接选择您的应用程序,并配置您的info.plist


Mah*_* Fa 5

1- 在 Xcode 中,右键单击项目的 Info.plist 文件并选择 Open As -> Source Code。

2- 将以下 XML 片段插入文件正文的最后一个</dict>元素之前。

  <key>CFBundleURLTypes</key>
<array>
  <dict>
    <key>CFBundleURLSchemes</key>
    <array>
      <string>fb{your-app-id}</string>
    </array>
  </dict>
</array>
<key>FacebookAppID</key>
<string>{your-app-id}</string>
<key>FacebookDisplayName</key>
<string>{your-app-name}</string>
<key>LSApplicationQueriesSchemes</key>
<array>
  <string>fbapi</string>
  <string>fb-messenger-share-api</string>
  <string>fbauth2</string>
  <string>fbshareextension</string>
</array>
Run Code Online (Sandbox Code Playgroud)

3- 将 {your-app-id} 和 {your-app-name} 替换为在 Facebook 应用仪表板上找到的应用的应用 ID 和名称。