如何使用Facebook iOS SDKpipe理生产和开发凭证
症状
我的应用程序使用Facebook来让用户login。它在从XCode进行debugging和通过AdHoc部署进行testing时工作正常,为了让外部testing人员提交我们的应用程序供审阅,但似乎Facebook在OAuth进程中抱怨“应用程序不是安装程序:这个应用程序的开发人员还没有正确设置这个应用程序的Facebooklogin“。
假设
XCode中的目标info
部分中的Custom iOS target properties
中的FacebookDisplayName
和FacebookAppId
与Facebook应用程序开发版本相匹配。 不知何故,SDK必须检测到,在审查过程中,应用程序不再在开发中,并发生错误。
题
如何在这个目标中Custom iOS target properties
一些具有不同release
和debug
值的Custom iOS target properties
?
您可以在Target的设置中为每个scheme(Debug,Release,Ad-Hoc,AppStore等)添加一个用户定义的设置,并在info.plist文件中使用用户定义的variables(或者称为Custom iOS目标属性) 。
这里是我如何做一个应用程序的包标识符的例子。 我想要Debug和AdHoc版本的单独的包标识符和服务器URL,以便可以在同一个设备上安装和testing这两个包:
-
在“目标设置”中添加所需数据作为用户定义的设置。
-
为不同的scheme设置不同的值。 (确保检查目标设置反映了更改,而不仅仅是项目设置。):
编辑:添加用户定义的设置的详细图像:
-
在上图中,BUNDLE_ID_PREFIX和BUNDLE_ID_SUFFIX对于每个scheme具有不同的值。
-
在info.plist中使用这个variables而不是默认值:
您将默认使用debuggingscheme从xcode运行应用程序。 如果您使用发布scheme归档应用程序进行上传,它将自动从目标设置中选取正确的值。