ParseTwitterUtils.logIn(view.getContext(), new LogInCallback() {
@Override
public void done(ParseUser user, ParseException err) {
if (user == null) {
Log.d("MyApp", "Uh oh. The user cancelled the Twitter login.");
} else if (user.isNew()) {
Log.d("MyApp", "User signed up and logged in through Twitter!");
} else {
Log.d("MyApp", "User logged in through Twitter!");
}
}
});
除了我传递给它的上下文之外。因为我在片段中的按钮点击事件中,我作为上下文传递: view.getContext()
我还打电话给:ParseTwitterUtils.initialize("YOUR CONSUMER KEY", "YOUR CONSUMER SECRET");
在使用我的API密钥和API密钥之前。但是,没有出现Twitter登录对话框。出现的是一个带有文字的小矩形:" loading ..."和一个移动的圆圈,但它关闭而不打开任何身份验证对话框。因此,永远不会调用 done()方法部分。
我意识到为了使用 ParseFacebookUtils ,需要Facebook SDK for android,而且这样的SDK是包含登录屏幕的SDK。事实上,当我使用ParseFacebookUtils时,它可以很好地工作。但Android中没有适用于Twitter登录界面的SDK。另外,Parse文档清楚地指出,当执行上面的代码时,应该出现Twitter登录对话框。根据它不需要采取进一步行动。
我在这里缺少什么。如何显示Twitter登录对话框?
答案 0 :(得分:0)
请确保您已正确输入消费者密钥和消费者密码。接下来请确保您遵循设置中的Parse.Com Android developer guide中的第3项。
即,
3。当被要求指定"回拨网址"对于您的Twitter应用,请插入有效的网址。您的iOS或Android应用程序不会使用此值,但必须通过Twitter启用身份验证。
您必须指定回调网址(有效网址),但不会使用它。这意味着,使用补充网址或使用http://myCompanyWebsite.com/callbackurl之类的内容。这可以在"设置"下进行设置。您的Twitter开发者控制台中的选项卡。
我没有在我的Parse应用程序中使用Twitter,但我能够通过错过第3步然后修复它来复制问题。
如果您仍然遇到问题,请在按下单击按钮时发布您的logcat。