我们的桌面应用程序(用Java编写并在Windows上运行但未在Windows应用程序商店中注册)需要在用户的Facebook配置文件上发布图像(使用 publish_actions
权限) .
虽然我们的实施工作在测试模式(我们能够在测试用户的 Profiles 上发布),但我们的申请提交已经被Facebook拒绝并提出以下意见:
我们目前的实施如下:
-
我们正在使用"Manual Login Flow"(如此处所述:https://developers.facebook.com/docs/facebook-login/manually-build-a-login-flow/v2.2),基于应用内网页浏览器
-
我们使用的登录URL是:https://www.facebook.com/dialog/oauth?client_id=xxx&redirect_uri=www.mydomain.com/login_successful.html&response_type=token&scope=publish_actions(其中mydomain.com是我们的实际网站,xxx是我们应用的ID)
-
在我们的应用程序配置(http://developers.facebook.com)上,我们已将"Website"指示为平台(因为所有其他人都需要应用程序商店应用程序ID),并且已将我们的网站域名作为站点URL提供(保持移动站点URL为空)
-
我们还在应用程序的高级配置中指出它是"Native or desktop app"并且"App Secret is embedded"
由于这种方法在审查我们的应用程序提交时被Facebook拒绝(虽然它确实在测试模式下工作),我们尝试了另一种方法:
-
从我们的应用配置中删除"Website"平台(即没有为我们的应用定义平台)
-
将redirect_uri(在登录URL中)更改为https://www.facebook.com/connect/login_success.html
但不幸的是,这会在加载登录URL时生成以下错误消息:
应用程序配置不允许使用URL:应用程序的设置不允许使用一个或多个给定的URL . 它必须与网站URL或Canvas URL匹配,或者域必须是App域之一的子域 .
任何帮助或提示都非常受欢迎,因为我们已经被阻止了好几周 . 谢谢!托马斯
1 回答
关于错误消息"Given URL is not permitted...":以下线程可能会有所帮助:facebook v2.2 login C#("Just enable the "嵌入式浏览器OAuth登录" button and it will work.") . 您可以在"Settings" - "Advanced" section "Security"下的Facebook应用设置中找到此按钮 .