Facebook的iOS SDK – 写入状态的奇怪效果
我正在更新我的应用程序使用xCode 4,iOS5和最新的Facebook SDK。 以前一切正常。
现在,两个奇怪的事情正在发生,尽pipe审查所有的代码和search论坛,我不明白为什么。
见下面的更新 。
第一次login
当用户刚刚login时,如果他们共享状态或取消尝试,则脚本显示如下:
<script type="text/javascript"> window.location.href="fbconnect:\/\/ success#_=_"; </script>
所有其他function(例如,当它不是第一次)似乎工作正常。
我怀疑这是与callback不开火,但我已经双重检查所有委托设置等。所有的Facebook委托方法是在AppDelegate,然后从视图控制器引用。
其他人遇到过这个问题吗? 任何指针都会受到热烈的欢迎。 我还没有发布任何代码,因为我不确定哪个位要关注,我已经使用了来自Facebook开发者网站的所有标准代码。
非常感谢,
克里斯。
UPDATE
感谢@Kristofer Sommestad和@Senior的帮助。 我有一些问题。
不要授权两次
Feed对话请求也请求授权,所以不要同时请求它们。
更新的SDK
我发现我的问题后更新了SDK – 请继续检查。
我没有意识到的是,使用SDK代码所需的代码已经改变,特别是调用提要对话框的代码。 看看https://developers.facebook.com/docs/reference/dialogs/feed/ 。
什么注销手段
注销只是将用户从应用程序中注销,而不是从Facebook中删除。
我也遇到了第一个问题,但通过确保身份validation没有被触发两次来解决。 最初,我做了以下工作:
[_facebook authorize:permissions]; [_facebook dialog:@"feed" andParams:params andDelegate:self];
不知道这是你的问题,但我注意到,这事情搞砸了,因为它实际上触发了2个authentication对话框,其中第二个结束了你也看到的Javascript输出。 出于某种原因,我认为,如果authorize
已经这样做,第二个不会触发对话….
相反,我确保authorize:
首先,但不触发dialog:andParams:andDelegate
直到使用-fbDidLogin
完成授权(并将对话框数据保存为实例variables)。
还没有看到任何问题,仍然能够发布消息,但也许它与第一个问题(?)有关。
希望这也能帮助你。
好吧,我只是从GitHub仓库拉了一下,我没有得到这个错误了。 但是,它调用(void)对话框:(FBDialog *)dialog didFailWithError:(NSError *)error
尝试更新到最新版本的SDK,然后重试。
这种不必要的JavaScript视图也困扰我。
我只是使用Facebook的饲料对话框 [facebook dialog: @"feed" andParams: myParameters andDelegate: ptrMyDialogDelegate];
。 如https://developers.facebook.com/docs/reference/dialogs/feed/所示。 我在其他地方没有别的授权。
委托是我的AppModel类(不是AppDelegate)。 FBDialogDelegate
-Protocol的所有方法都被正确调用,但是在closures这个恼人的视图之后。
我没有使用GIT。 我下载了ZIP文件,并将src /目录下的所有源文件*.[h|m]
(包括src / JSON / subdir)和FBDialog.bundle
(共23个文件)复制到我现有的项目中。
如果我下载ZIP文件或克隆Facebook iOS SDK GIT-Repository,它有什么区别吗?
要将Facebook类集成到我现有的MyApp项目中(意味着像Xcode Project Navigator中显示的MyApp类树),我必须以同样的方式复制(例如拖放或Xcode“广告文件…”)Facebook类,不是吗?
- 使用Googlelogin和两个目标
- 用facebook iOS sdklogin注销问题
- 在iOS应用程序启动时有条件地切换根视图控制器的最佳方式
- 自定义Googleloginbutton – iOS
- 如何保持login,直到用户决定注销?
- iOS与parsing。 PFUser.currentuser()没有被caching。 应用程序重新启动后返回nil
- Google SignIn SFSafariViewController / WebView在接受权限后redirect到Google.com
- iOS:使用Facebook和Google,Google Pluslogin
- 自定义Google Sign In在GIDSignInDelegate协议上抛出exception