Facebook 检测无摩擦请求UI弹出窗口

Facebook 检测无摩擦请求UI弹出窗口,facebook,facebook-javascript-sdk,apprequests,Facebook,Facebook Javascript Sdk,Apprequests,我正在尝试在我们的canvas应用程序中创建一个请求流,它使用无摩擦请求来允许在全屏状态下发送请求 我看不到解决方案的问题是如何检测何时发送请求会弹出UI对话框,何时不会。如果我专门向一个或多个用户发送请求,而其中任何一个用户尚未打开无摩擦请求,我将需要跳出全屏,以便FB UI对话框可以显示 但是,如果用户以前发送过请求并选中了“无摩擦”复选框,我们就不需要跳出全屏 我如何知道UI对话框是否会显示?起初我认为可以使用hideFlashCallback,但它似乎只针对Facebook元素(如通知面

我正在尝试在我们的canvas应用程序中创建一个请求流,它使用无摩擦请求来允许在全屏状态下发送请求

我看不到解决方案的问题是如何检测何时发送请求会弹出UI对话框,何时不会。如果我专门向一个或多个用户发送请求,而其中任何一个用户尚未打开无摩擦请求,我将需要跳出全屏,以便FB UI对话框可以显示

但是,如果用户以前发送过请求并选中了“无摩擦”复选框,我们就不需要跳出全屏

我如何知道UI对话框是否会显示?起初我认为可以使用hideFlashCallback,但它似乎只针对Facebook元素(如通知面板)启动,而不是应用程序本身启动的对话框


提前感谢您的任何帮助或想法!我知道在FB上有一些游戏可以正确处理这个问题,但我不知道它们是如何做到的。

据我所知,没有办法通过API检测到这一点。您可能能够在DOM中检测到它,但是您将通过使用未记录的特性来使用FB更新来打开自己的缺口

您可以尝试设置一个中断全屏的超时,如果您的回调立即得到响应,那么您可以取消它。您必须根据API在无摩擦请求中执行回调通常需要的时间来调整超时的持续时间,但您可能需要250或500毫秒左右的时间来完成此操作