我有同一个iPhone应用程序的免费和付费版本。我希望他们共享一个Facebook应用程序ID,因为它们本质上是相同的应用程序。我以为我可以通过Facebook类使用这种方法来实现这一点。
- (void)authorize:(NSArray *)permissions localAppId:(NSString *)localAppId
然而,其中一个应用程序(在我的情况下是免费版本)的登录总是失败,并且似乎原因是在Web界面中创建的Facebook应用程序要求提供应用程序包ID和App Store ID。显然,我的应用程序的免费版本和付费版本不能具有相同的软件包ID或应用程序ID,那么我该如何使其工作?
Facebook.m中的文档表明,我可以使用上面提到的授权方法:
/*
* ...
* @param localAppId
* This is useful if your have multiple iOS applications that
* share a single Facebook application id (for example, if you
* have a free and a paid version on the same app) and you want
* to use SSO with both apps.
* ...
*/
感谢。 - 亚历克斯
答案 0 :(得分:2)
你可以让它发挥作用。每个应用程序必须有不同的网址方案(因为这是Facebook重定向回您的应用程序的方式)。
您必须支持的示例网址方案: (您的Facebook应用程序ID:“fb123456789”)
未设置localAppId:“fb123456789”(localAppId = nil)
免费应用网址:“fb123456789lite”(localAppId =“lite”)
付费应用网址“fb123456789pro”(localAppId =“pro”)
来自评论:
localAppId是一个附加到的小写字母字符串 用于SSO的基本URL方案。例如,如果您的Facebook ID是 Facebook应用程序将“350685531728”并将localAppId设置为“abcd” 希望您的应用程序绑定到以下URL方案: “fb350685531728abcd”。