Facebook iOS SDK 4.2:多个应用程序环境的无效 URL 方案
Facebook iOS SDK 4.2: Invalid URL Schemes for Multiple App Environments
我的 staging
和 production
构建需要使用相同的 Facebook 应用程序 ID。我已经在我的应用程序 .plist
文件中定义了 URL 方案后缀,并使用所需的 Bundle Id 和 URL 方案配置了仪表板,完全按照 sharing an app ID across Apps 文档。
仪表盘的URL方案后缀:
App-Info.plist:
问题是,我可以在我的 staging
版本上使用 Facebook 登录,但是当我尝试登录 production
版本时,它在以下位置崩溃并中断:
我尝试了一些几乎相似的解决方案,但 none 对我有用。有人能给我指出正确的方向吗?
- Facebook SDK: app not registered as a URL Scheme
- FBSDKLog: Cannot use the Facebook app or Safari to authorize, fb**** is not registered as a URL Scheme
解决了。事实证明,我每个scheme只能定义一个FB URL Scheme。我也忘了定义FacebookURLSchemeSuffix
。所以,我所做的是,我使用用户定义的设置在 staging
和 production
构建之间交替。这是我的做法。
- 转到
Targets > Build Setttings
并添加 user-defined setting
。
然后,我将我的用户定义值 (FB_SCHEME
) 设置为 staging
用于 staging
构建,反之亦然。
- 在我的
App-info.plist
文件中。我将 FacebookURLSchemeSuffix
和 URL scheme
设置为以下内容:
现在,每当我在方案之间切换时,它会将 ${FB_SCHEME}
的值设置为 production
或 staging
。就是这样。
我的 staging
和 production
构建需要使用相同的 Facebook 应用程序 ID。我已经在我的应用程序 .plist
文件中定义了 URL 方案后缀,并使用所需的 Bundle Id 和 URL 方案配置了仪表板,完全按照 sharing an app ID across Apps 文档。
仪表盘的URL方案后缀:
App-Info.plist:
问题是,我可以在我的 staging
版本上使用 Facebook 登录,但是当我尝试登录 production
版本时,它在以下位置崩溃并中断:
我尝试了一些几乎相似的解决方案,但 none 对我有用。有人能给我指出正确的方向吗?
- Facebook SDK: app not registered as a URL Scheme
- FBSDKLog: Cannot use the Facebook app or Safari to authorize, fb**** is not registered as a URL Scheme
解决了。事实证明,我每个scheme只能定义一个FB URL Scheme。我也忘了定义FacebookURLSchemeSuffix
。所以,我所做的是,我使用用户定义的设置在 staging
和 production
构建之间交替。这是我的做法。
- 转到
Targets > Build Setttings
并添加user-defined setting
。
然后,我将我的用户定义值 (FB_SCHEME
) 设置为 staging
用于 staging
构建,反之亦然。
- 在我的
App-info.plist
文件中。我将FacebookURLSchemeSuffix
和URL scheme
设置为以下内容:
现在,每当我在方案之间切换时,它会将 ${FB_SCHEME}
的值设置为 production
或 staging
。就是这样。