我有一个使用Facebook登录的基于Worklight的应用程序。当我预览它时一切正常(我可以单击登录按钮并显示Facebook登录对话框),但是当我在Android模拟器或设备上运行它时,我在LogCat中收到以下错误:
05-28 09:17:35.391: I / Web Console (751): URL has not been configured
> to allow application.: One or more of the provided URL is not set app
> permissions. URL must match the URL of the web page or the page URL or
> domain is a subdomain of the domain of application. at
> https://www.facebook.com/connect/ping?client_id=321009794697186&response_type=token%2Csigned_request%2Ccode&domain=&origin=2&redirect_uri=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D24%23cb%3Df1eae8b44c%26origin%3Dfile%253A%252F%252F%252Ff3688c0c94%26domain%3D%26relation%3Dparent&sdk=joey:1
这是我在应用程序中的Facebook配置:
window.fbAsyncInit = function() { FB.init({
appId : 'xxxxx', // App ID // channelUrl : 'http://stormy-sands-2143.herokuapp.com/channel.html', // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true, // parse XFBML
oauth: true });
};
// Load the SDK asynchronously (function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "http://connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js); }(document));
这是我在facebook.com应用中的Facebook配置:
我需要配置什么才能在设备中运行?
答案 0 :(得分:3)
我相信这个错误发生在您身上,因为您使用的是Facebook JavaScript SDK 此SDK适用于Web服务器上的Web资源:
Facebook应用程序需要网站或移动网络应用程序可能具有的应用程序域/站点URL,但Android应用程序没有域名...
使用Android环境的Worklight Hybrid应用在使用网络资源时不是“移动网络应用”,它是应用
因此,您应该使用跨平台实现Facebook登录的Cordova plug-in(插件可用),或者使用Facebook SDK for Android。