我制作了一个使用 PhoneGap 构建的 Sencha Touch 应用程序,并托管在两个主要商店(Google Play 和 Apple Store)上,并具有 FB 共享功能。我使用了 PhoneGap 的“FacebookConnect”插件(https://github.com/phonegap/phonegap-plugins/tree/master/Android/FacebookConnect)。我使用以下代码共享链接:
window.plugins.facebookConnect.dialog('feed',
{
link: mylink,
picture: mypicture, // provide not a local url. otherwise, FB does not display nothing and rises an "FBCDN image is not allowed in stream" error
name: myname,
caption: mycaption,
description: mydescription
},
function(response) {
console.log("FacebookConnect.dialog:" + JSON.stringify(response));
}
);
如果尚未登录 FB(例如,使用已安装的 FB 原生应用程序),插件将在打开共享对话框之前向用户显示基于 Web 的登录窗口。
在此之前,请记住在您的应用程序中使用类似的东西来初始化 FB API:
window.plugins.facebookConnect.initWithAppId(FBID, function(result) {
console.log("FacebookConnect.initWithAppId: " + JSON.stringify(result));
// Check for cancellation/error
if(result.cancelled || result.error) {
console.log("FacebookConnect.initWithAppId:failedWithError: " + result.message);
return;
}
});
还记得不要在应用程序启动时调用FB API登录方法,否则Apple会拒绝应用程序。
我希望这对您的项目有用。