授权错误与jTwitter为Android [英] Authorization error with jTwitter for android

查看:146
本文介绍了授权错误与jTwitter为Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用jTwitter库在我的Andr​​oid应用程序。直到前天一切工作正常。但是,今天我得到异常错误服务提供者回应:301。请帮帮我吧。

下面是疗法堆栈跟踪:

  02-21 21:07:27.258:E / AndroidRuntime(4013):致命异常:AsyncTask的#1
02-21 21:07:27.258:E / AndroidRuntime(4013):java.lang.RuntimeException的:一个错误而执行doInBackground发生()
02-21 21:07:27.258:E / AndroidRuntime(4013):在android.os.AsyncTask $ 3.done(AsyncTask.java:299)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.FutureTask中$ Sync.innerSetException(FutureTask.java:273)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.FutureTask.setException(FutureTask.java:124)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:307)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.FutureTask.run(FutureTask.java:137)
02-21 21:07:27.258:E / AndroidRuntime(4013):在android.os.AsyncTask $ SerialExecutor $ 1.运行(AsyncTask.java:230)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.ThreadPoolExecutor中的$ Worker.run(ThreadPoolExecutor.java:569)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.lang.Thread.run(Thread.java:856)
02-21 21:07:27.258:E / AndroidRuntime(4013):由:winterwell.jtwitter.TwitterException:oauth.signpost.exception.OAuthCommunicationException:与服务提供者的通信失败:服务提供商回应错误:301(永久移动)
02-21 21:07:27.258:E / AndroidRuntime(4013):在winterwell.jtwitter.OAuthSignpostClient.authorizeUrl(OAuthSignpostClient.java:307)
02-21 21:07:27.258:E / AndroidRuntime(4013):在com.example.retrieve.contacts.twitter.MainActivity $ MyTask.doInBackground(MainActivity.java:363)
02-21 21:07:27.258:E / AndroidRuntime(4013):在com.example.retrieve.contacts.twitter.MainActivity $ MyTask.doInBackground(MainActivity.java:1)
02-21 21:07:27.258:E / AndroidRuntime(4013):在android.os.AsyncTask $ 2.call(AsyncTask.java:287)
02-21 21:07:27.258:E / AndroidRuntime(4013):在java.util.concurrent.FutureTask中$ Sync.innerRun(FutureTask.java:305)
02-21 21:07:27.258:E / AndroidRuntime(4013):... 5个
02-21 21:07:27.258:E / AndroidRuntime(4013):由:oauth.signpost.exception.OAuthCommunicationException:与服务提供者的通信失败:服务提供商回应错误:301(永久移动)
02-21 21:07:27.258:E / AndroidRuntime(4013):在oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:214)
02-21 21:07:27.258:E / AndroidRuntime(4013):在oauth.signpost.AbstractOAuthProvider.retrieveRequestToken(AbstractOAuthProvider.java:69)
02-21 21:07:27.258:E / AndroidRuntime(4013):在winterwell.jtwitter.OAuthSignpostClient.authorizeUrl(OAuthSignpostClient.java:303)
02-21 21:07:27.258:E / AndroidRuntime(4013):9 ...更多
02-21 21:07:27.258:E / AndroidRuntime(4013):oauth.signpost.exception.OAuthCommunicationException:由造成服务提供者错误回应:301(永久移动)
02-21 21:07:27.258:E / AndroidRuntime(4013):在oauth.signpost.AbstractOAuthProvider.handleUnexpectedResponse(AbstractOAuthProvider.java:241)
02-21 21:07:27.258:E / AndroidRuntime(4013):在oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:189)
 

解决方案

微博改变了他们的API。这是一个微不足道的,但恼人的改变OAuth的URL。

这是固定的(2.7)的最新版本JTwitter的 - 你可以从下载JTwitter网页

I am using jTwitter library in my android application. Till day before yesterday everything was working fine. But today am getting exception "Service provider responded in error : 301". Kindly help me.

Here is ther stack trace :

02-21 21:07:27.258: E/AndroidRuntime(4013): FATAL EXCEPTION: AsyncTask #1
02-21 21:07:27.258: E/AndroidRuntime(4013): java.lang.RuntimeException: An error occured while executing doInBackground()
02-21 21:07:27.258: E/AndroidRuntime(4013):     at android.os.AsyncTask$3.done(AsyncTask.java:299)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.FutureTask$Sync.innerSetException(FutureTask.java:273)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.FutureTask.setException(FutureTask.java:124)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:307)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.FutureTask.run(FutureTask.java:137)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1076)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:569)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.lang.Thread.run(Thread.java:856)
02-21 21:07:27.258: E/AndroidRuntime(4013): Caused by: winterwell.jtwitter.TwitterException: oauth.signpost.exception.OAuthCommunicationException: Communication with the service provider failed: Service provider responded in error: 301 (Moved Permanently)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at winterwell.jtwitter.OAuthSignpostClient.authorizeUrl(OAuthSignpostClient.java:307)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at com.example.retrieve.contacts.twitter.MainActivity$MyTask.doInBackground(MainActivity.java:363)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at com.example.retrieve.contacts.twitter.MainActivity$MyTask.doInBackground(MainActivity.java:1)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
02-21 21:07:27.258: E/AndroidRuntime(4013):     ... 5 more
02-21 21:07:27.258: E/AndroidRuntime(4013): Caused by: oauth.signpost.exception.OAuthCommunicationException: Communication with the service provider failed: Service provider responded in error: 301 (Moved Permanently)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:214)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at oauth.signpost.AbstractOAuthProvider.retrieveRequestToken(AbstractOAuthProvider.java:69)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at winterwell.jtwitter.OAuthSignpostClient.authorizeUrl(OAuthSignpostClient.java:303)
02-21 21:07:27.258: E/AndroidRuntime(4013):     ... 9 more
02-21 21:07:27.258: E/AndroidRuntime(4013): Caused by: oauth.signpost.exception.OAuthCommunicationException: Service provider responded in error: 301 (Moved Permanently)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at oauth.signpost.AbstractOAuthProvider.handleUnexpectedResponse(AbstractOAuthProvider.java:241)
02-21 21:07:27.258: E/AndroidRuntime(4013):     at oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:189)

解决方案

Twitter changed their API. It's a trivial but annoying change to the oauth url.

This is fixed in the latest version of JTwitter (2.7) -- which you can download from the JTwitter webpage

这篇关于授权错误与jTwitter为Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆