我想创建一个Android应用程序,它将在twitter中更新状态。 我正在使用signpost-core-1.2.1.1和signpost-commonshttp4-1.2.1.1 jar文件。我已经获得了互联网使用权限,我在Twitter上注册了应用程序,允许读取,写入和直接消息。还填写了回调网址。
代码段:
private static final String CALLBACK_URI = "app://twitter";
private static final String REQUEST_TOKEN_URL = "https://api.twitter.com/oauth/request_token";
private static final String ACCESS_TOKEN_URL = "https://api.twitter.com/oauth/access_token";
private static final String AUTHORIZE_URL = "https://api.twitter.com/oauth/authorize";
String CONSUMER_KEY = "XXXXXXXXXX";
String CONSUMER_SECRET = "XXXXXXXXXX";
private static CommonsHttpOAuthConsumer consumer;
private static CommonsHttpOAuthProvider provider;
consumer = new CommonsHttpOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);
provider = new DefaultOAuthProvider(REQUEST_TOKEN_URL,ACCESS_TOKEN_URL, AUTHORIZE_URL);
String authUrl="";
authUrl = provider.retrieveRequestToken(consumer,CALLBACK_URI);
我完全坚持这个。请回复。
答案 0 :(得分:1)
Signpost文档说DefaultOAuthProvider在java.net的Android实现上有一些问题。他们建议使用CommonsHttpOAuthProvider代替。我遇到了同样的问题。这在我的案例中解决了这个例外。希望这会有所帮助。
答案 1 :(得分:0)
首先通过Android应用程序,我们不允许发送callbackurl,所以使用“oob”而不是callbackurl,并且有一个api for twitter,也支持android,它是jTwitter。