Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用android应用程序登录Twitter失败,出现授权错误_Java_Android_Twitter - Fatal编程技术网

Java 使用android应用程序登录Twitter失败,出现授权错误

Java 使用android应用程序登录Twitter失败,出现授权错误,java,android,twitter,Java,Android,Twitter,AndroidManifest.xml 在onCreate中,还会进行以下身份验证: TwitterAuthConfig authConfig = new TwitterAuthConfig("H56NrAZ6lRDgybpaKKn049w0f", "Gx057EzJ9ZQEI7D1pR9Jjo9LzTgkXWsuFr7sviVXssnuzbl2j6"); Fabric.with(this, new Twitter(authConfig)); 最后,twitter登录的代码如

AndroidManifest.xml

在onCreate中,还会进行以下身份验证:

TwitterAuthConfig authConfig =  new TwitterAuthConfig("H56NrAZ6lRDgybpaKKn049w0f", "Gx057EzJ9ZQEI7D1pR9Jjo9LzTgkXWsuFr7sviVXssnuzbl2j6");
        Fabric.with(this, new Twitter(authConfig));
最后,twitter登录的代码如下:

case "Twitter" :
                        holder.appViewStub.setLayoutResource(R.layout.twitter_login_layout);
                        View twitterView = holder.appViewStub.inflate();
                        twitterloginButton =  (TwitterLoginButton) twitterView.findViewById(R.id.sign_in_button);
                        twitterloginButton.setCallback(new com.twitter.sdk.android.core.Callback<TwitterSession>() {
                            @Override
                            public void success(Result<TwitterSession> result) {
                                Log.d("twitter app","Inside twitter success");
                                // Do something with result, which provides a TwitterSession for making API calls
                                result.data.getUserId();
                            }

                            @Override
                            public void failure(TwitterException exception) {
                                Log.getStackTraceString(exception);
                                Log.d("twitter app","Inside twitter failure");
                                // Do something on failure
                            }
                        });
                        break;
case“Twitter”:
holder.appViewStub.setLayoutResource(R.layout.twitter\u登录\u布局);
View twitterView=holder.appViewStub.inflate();
twitterloginButton=(twitterloginButton)twitterView.findViewById(R.id.sign_in_按钮);
twitterloginButton.setCallback(新的com.twitter.sdk.android.core.Callback(){
@凌驾
公开作废成功(结果){
Log.d(“推特应用程序”、“推特内部成功”);
//对result执行一些操作,它提供了一个用于进行API调用的TwitterSession
result.data.getUserId();
}
@凌驾
公共无效失败(TwitterException异常){
Log.getStackTraceString(异常);
Log.d(“推特应用程序”、“推特内部故障”);
//失败时做点什么
}
});
打破
当我尝试使用此代码登录twitter时,twitter应用程序会打开并成功登录该应用程序,但当它将其重定向到我的应用程序时,我会收到以下错误消息:

com.twitter.sdk.android.core.TwitterAuthException:授权失败


我查阅了文档,在网上查阅了一下,但到目前为止没有成功。请提供帮助。

我在twitter开发者控制台上创建的应用程序在权限方面有一些问题。我在控制台上创建了另一个应用程序,并在
fabric
的帮助下重新进行了身份验证,现在一切正常

TwitterAuthConfig authConfig =  new TwitterAuthConfig("H56NrAZ6lRDgybpaKKn049w0f", "Gx057EzJ9ZQEI7D1pR9Jjo9LzTgkXWsuFr7sviVXssnuzbl2j6");
        Fabric.with(this, new Twitter(authConfig));
case "Twitter" :
                        holder.appViewStub.setLayoutResource(R.layout.twitter_login_layout);
                        View twitterView = holder.appViewStub.inflate();
                        twitterloginButton =  (TwitterLoginButton) twitterView.findViewById(R.id.sign_in_button);
                        twitterloginButton.setCallback(new com.twitter.sdk.android.core.Callback<TwitterSession>() {
                            @Override
                            public void success(Result<TwitterSession> result) {
                                Log.d("twitter app","Inside twitter success");
                                // Do something with result, which provides a TwitterSession for making API calls
                                result.data.getUserId();
                            }

                            @Override
                            public void failure(TwitterException exception) {
                                Log.getStackTraceString(exception);
                                Log.d("twitter app","Inside twitter failure");
                                // Do something on failure
                            }
                        });
                        break;