iOS Facebook SDK – 远程定义FacebookAppID
使用iOS的Facebook SDK 3.0,需要在应用程序的info.plist上定义FacebookAppID和相关的URL Scheme。 我想远程定义这些(请求我的服务器的应用程序ID)。 所以2个不同的问题:
- 我可以在运行时更改应用程序的info.plist吗? 或者我可以在另一个plist中定义FacebookApID和URL Scheme,我可以改变plist甚至创build一个新的自定义plist文件?
- 除了使用Facebook SDK 3.0的info.plist之外,是否还有另一种定义URL Scheme和App ID的方法?
1.1不,您不能在运行时更改Info.plist文件。
1.2否,您无法加载另一个plist文件来覆盖Info.plist中的设置。
2.1是的,您可以通过调用[FBSettings setDefaultAppID:@"Your Facebook App ID"];
来定义FacebookApID而不更改Info.plist文件[FBSettings setDefaultAppID:@"Your Facebook App ID"];
在Facebook iOS SDK中查看FBSettings.h的源代码。
2.2否,URLscheme必须在Info.plist中定义,以便iOS可以识别它。 我相信,在安装你的应用程序时,URLscheme是由iOS读取的,并且它被caching在系统中的其他地方。 即使你可以改变你的Info.plist,系统也不会select你的新的URL Scheme。 但是不要担心,没有使用URLscheme的Facebook身份validation有一个解决方法! 我们可以强制Facebook的iOS SDK使用UIWebViewlogin,看到这个stackoverflow的问题 。
这是不可能的,原因有很多:
- 您不能在运行时修改iOS应用的info.plist文件。
- 你应该有一个Facebook应用程序运行,你不能得到你的ID 很久之前,你试图运送你的应用程序。 你现在如何testing应用程序?
- Facebook应用程序ID绑定到应用程序用来完成Facebook的OAuthstream程的URLscheme。 iOS应用程序的URLscheme在info.plist中定义,同样,您不能更改。
- 能够随意设置Facebook应用程序ID是一个安全问题,因为它会使别人的Facebook应用程序构成微不足道。
这些只是我能想到的一小部分,我相信还有更多。
- MFMailComposeViewController在iOS5中dismissModalViewControllerAnimated时崩溃
- 视网膜兼容性问题:我可以添加@ 2x到我自己的图像视网膜兼容性?
- Facebook的iOS SDK 3.0login教程与FBSession的问题
- FBAudiencenetworking:objc_boxable属性只适用于结构或联合
- Facebooklogin后更改视图控制器
- iOS的Facebook的SDK如何下载相册,个人资料的照片数据
- 在UiWebView – NSURLConnection / CFURLConnection HTTP加载失败(kCFStreamErrorDomainSSL,-108)
- 自定义在ios应用程序中login到Facebook
- 如何有一个付费和免费版本的iOS应用程序共享FB应用程序ID?
- iOS的Facebook集成
- 是否有可能发布opengraph在用户的墙上/饲料/股票而不运行我自己的服务器?