登录Twitter后,它不会回到OnActivityResult, 我正在使用片段进行这个Twitter集成 这是我的代码
我遵循了本教程https://docs.fabric.io
TwitterAuthConfig twitterAuthConfig = new TwitterAuthConfig(TwitterKey,TwitterSecretKey);
Fabric.with(getContext(),new Twitter(twitterAuthConfig));
...
twitterLoginButton.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result ) {
Log.d("TwitterKit", "Twitter Result "+ result );
Twitter.getInstance().core.getSessionManager().getActiveSession()
TwitterSession session = result.data;
String msg = "@" + session.getUserName() + " logged in! (#" + session.getUserId() + ")";
Log.d("TwitterKit", "Twitter Result "+msg);
Toast.makeText(getContext(), msg, Toast.LENGTH_LONG).show();
}
@Override
public void failure(TwitterException exception) {
Log.d("TwitterKit", "Login with Twitter failure", exception);
}
});
...
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d("APP_LOG ", " requestCode " + requestCode + " resultscode: " + resultCode + " Data " + data);
loginButton.onActivityResult(requestCode, resultCode, data);
}
答案 0 :(得分:1)
我找到了答案,Twitter不适合我,因为我在片段中使用过 所以这就是为什么它不起作用,我刚刚创建了新的Activity它正在运行
答案 1 :(得分:0)
尽管您已经找到了解决方案,但我想再提一个原因,为什么您的onActivityResult无法调用。
这不取决于您是否在片段或活动中实现了Twitter回调处理-它在两种情况下均应工作。唯一的区别是,在片段实现中,您应该将onActivityResult事件从活动扔到片段中。
另一个未调用onActivityResult的原因是,您的活动在调用twitter auth视图后立即关闭。 如果您的活动具有 noHistory =“ true” 标志,则可能会发生这种情况。