我的手机应用程序首先需要用户登录Facebook,然后返回到应用程序进一步操作。appcelerator titanium mobile Facebook登录 - 还没有设置Titanium.Facebook.loggedIn登录后
成功登录fb后,预计Titanium.Facebook.loggedIn将为true,并且该应用可以获取Ti.Facebook.uid中的值。
然而,情况并非总是如此。有时,成功登录fb并返回应用程序后,Titanium.Facebook.loggedIn仍然是错误的,肯定无法获取Ti.Facebook.uid。 但是,当用户注销并在同一个应用程序部分内再次登录时,它将正常工作。因此,我的应用有时需要用户登录Facebook两次。
你有什么想法吗?代码如下所示。
var login = Titanium.Facebook.createLoginButton({
top: 100, style:'wide'
});
var actionsView = Ti.UI.createView({
top: 0, left: 0, right: 0, touchEnabled: false, height: 320
});
var loginView = Ti.UI.createView({
top: 0, left: 0, right: 0, visible: !Titanium.Facebook.loggedIn, height: Titanium.Platform.displayCaps.platformHeight,opacity:0.85, backgroundColor:'#fff'
});
loginView.add(login);
Titanium.Facebook.addEventListener('login', function(e) {
if (e.success) {
if (Titanium.Facebook.loggedIn){
loginView.hide();
actionsView.touchEnabled=true;
}else{
statusAlert = Titanium.UI.createAlertDialog({title:appname,message:'Login failed.'});
statusAlert.show();
}
if (e.error) {
alert(e.error);
}
});
var logout = Titanium.Facebook.createLoginButton({
top: 300, style:'wide', visible: false
});
这是1.6或更高,你有权限问FB设置? – bh88