Android设备上的Facebook身份验证导致应用程序失败(Titanium android)

时间:2012-06-07 07:45:17

标签: android facebook authentication nullpointerexception titanium-mobile

在我的应用程序中,我正在使用facebook身份验证。我的代码看起来像

var win1 = Titanium.UI.createWindow({  
    title:'Tab 1',
    backgroundColor:'#fff',
    layout:'vertical'
});win1.open();

Titanium.Facebook.appid = "appid";
Titanium.Facebook.permissions = ['abc'];

var facebook_button = Ti.UI.createButton(
{
    height:50,
    width:200
});win1.add(facebook_button);
facebook_button.addEventListener('click', function(e)
{
    Titanium.Facebook.authorize();  
});
var facebook = Titanium.Facebook.createLoginButton({
    style:'wide',
    bottom:80
});
win1.add(facebook);
Titanium.Facebook.addEventListener('login', connect_facebook);

function connect_facebook()
{
    alert('inside');
    Titanium.Facebook.logout();
} 

现在点击facebook_button时会出现问题。当我在Android设备(版本2.2)上安装应用程序时,我点击facebook_button它会导致强制关闭应用程序。强制关闭后如果我再次启动应用程序并使用相同的功能它工作正常。我的日志记录给出了以下错误 java.lang.NullPointerException 。 如果我使用钛facebook按钮,即 Ti.Facebook.createLoginButton 它即使在第一次使用时也没有出现任何错误。但我想使用自己的自定义登录按钮。 我想删除此空指针异常。我正在使用android sdk 2.0.1。并在Android设备2.2上测试。在没有任何错误的情况下运行的模拟器应用程序。有什么办法可以解决这个问题吗?需要帮助..谢谢..

1 个答案:

答案 0 :(得分:0)

我没有从Titanium连接到Facebook的经验,但是两天前安装了一个新的示例应用程序:https://wiki.appcelerator.org/display/guides/Example+Applications#ExampleApplications-ARti

这连接到FB,不知道以什么方式。您可以从GitHub下载示例代码,也许您觉得它很有用。

此外,根据我的经验,您使用的较旧的Android SDK版本存在一些问题。我有更好的经验使用2.3和更新。最近使用SDK 4.x编译了一个应用程序并使其在2.2的设备上运行,因此向后兼容性没有问题。也许升级您的SDK会有所帮助。