使用iOS Facebook SDK 3.0时,需要在应用的info.plist上定义FacebookAppID及相关的URL Scheme。我想远程定义这些(向我自己的服务器请求app id)。所以有两个不同的问题:
答案 0 :(得分:14)
1.1否,您无法在运行时更改Info.plist文件。
1.2否你无法加载另一个plist文件来覆盖Info.plist中的设置。
2.1是的,您可以通过调用[FBSettings setDefaultAppID:@"Your Facebook App ID"];
来定义FacebookApID而无需更改Info.plist文件。请参阅Facebook iOS SDK中FBSettings.h的源代码。
2.2否,必须在Info.plist中定义URL方案,以便iOS可以识别它。我相信在安装您的应用程序时,iOS会读取URL方案,并将其缓存在系统的其他位置。即使您可以更改Info.plist,系统也不会选择新的URL方案。但不要担心,Facebook身份验证有一种解决方法,而不使用URL方案!我们可以强制Facebook iOS SDK使用UIWebView进行登录,请参阅this stackoverflow question。
答案 1 :(得分:2)
由于多种原因,这是不可能的:
这些只是我能想到的极少数,我相信还有更多。