com.twitter.sdk.android.core.TwitterApiException:HTTP请求失败,状态:400

问题描述 投票:0回答:1

当我从Android应用程序中使用Twitter作曲家撰写推文时,出现此400错误。

Twitter SDK的身份验证:

    TwitterConfig config = new TwitterConfig.Builder(this)
            .logger(new DefaultLogger(Log.DEBUG))
            .twitterAuthConfig(new TwitterAuthConfig(getResources().getString(R.string.twitter_api_key), getResources().getString(R.string.twitter_api_secret)))
            .debug(true)
            .build();
    Twitter.initialize(config);

    twitterAuthClient = new TwitterAuthClient();

    TwitterSession twitterSession = TwitterCore.getInstance().getSessionManager().getActiveSession();

    if (twitterSession == null) {
        twitterAuthClient.authorize(this, new Callback<TwitterSession>() {
            @Override
            public void success(Result<TwitterSession> result) {
                TwitterSession twitterSession = result.data;
                shareOnTwitter(twitterSession);
            }

            @Override
            public void failure(TwitterException e) {
                showToast("Failed to authenticate user " + e.getMessage());
            }
        });
    } else {
        shareOnTwitter(twitterSession);
    }

使用TweetComposer共享:

private void shareOnTwitter(TwitterSession twitterSession) {
    Intent intent = new ComposerActivity.Builder(MyShareActivity.this)
                                .session(twitterSession)
                                .image(Uri.fromFile(imageFile))
                                .text("Tweet Message")
                                .hashtags("#MyApp")
                                .createIntent();
    startActivityForResult(intent, SHARE_ON_TWITTER);
}

这是我有时会收到的错误。有时它会按预期工作。

 E/TweetUploadService: Post Tweet failed
com.twitter.sdk.android.core.TwitterApiException: HTTP request failed, Status: 400
    at com.twitter.sdk.android.core.Callback.onResponse(Callback.java:42)
    at retrofit2.ExecutorCallAdapterFactory$ExecutorCallbackCall$1$1.run(ExecutorCallAdapterFactory.java:70)
    at android.os.Handler.handleCallback(Handler.java:883)
    at android.os.Handler.dispatchMessage(Handler.java:100)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7397)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:935)

有人可以帮我吗?

android twitter twitter-oauth http-status-code-400
1个回答
0
投票

尝试将您在Twitter开发人员站点中使用的应用程序中的回调URL添加到此。

twittersdk://

© www.soinside.com 2019 - 2024. All rights reserved.