我正在使用这个插件在我的 Phonegap 应用程序中有一个 facebook 登录选项: https://github.com/phonegap/phonegap-facebook-plugin .
我已按照 Android“入门”中的所有步骤进行操作,当我在未安装官方 Facebook 应用程序的设备(模拟器和真实设备)上运行该应用程序时,一切正常。当我在安装了官方 Facebook 应用程序的设备上运行它并单击登录按钮时,会出现 Facebook 对话框并请求许可。我选择确定,对话消失,什么也没有发生。没有错误或其他警告出现,我也没有登录。
我该如何解决这个问题?
JavaScript:
function logout() {
FB.logout(function(response) {
alert('logged out');
});
}
function logIn() {
try {
FB.init({ appId: "*****************", nativeInterface: CDV.FB, useCachedDialogs: false });
} catch (e)
{
alert("error");
}
FB.login(
function(response) {
if (response.authResponse) {
// not invoked
alert('logged in');
} else {
// not invoked
alert('error');
}
},
{ scope: "email" }
);
}
最佳答案
感谢您提示我它与 FB 应用程序设置有关:在我的例子中,是这个问题的原因(phonegap-facebook-plugin:仅在未安装 native FB 应用程序时有效(Android))是,我没有对使用 phonegap-facebook-plugin 的 Android 应用程序进行发布签名。
在我以 Release模式(使用用于生成 key 哈希的 keystore )签署我的 Android 应用程序后,即使安装了 FB 应用程序,该应用程序也能正常工作。
旁注:感谢 stackoverflow 上的所有贡献者!!没有像这样的提示、窍门和提示,我将永远无法完成我的工作。
关于android - phonegap-facebook-插件 : only works when native FB app is not installed (Android),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15522372/