我正在使用Twitter4j lib。我无法直接向我的粉丝发送消息。
new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
DirectMessage message = null;
try {
message = twitter.sendDirectMessage(friendId, messsage);
Log.d(" *** Twiiter Sent message **** ", "Sent Message is : "
+ message.getText() + " \t Sender name: "
+ message.getRecipientScreenName());
} catch (TwitterException e) {
e.printStackTrace();
}
}
}).start();
我得到以下异常:
404:请求的URI无效或请求的资源(例如用户)不存在。当请求的方法不支持请求的格式时,也会返回。 消息 - 抱歉,该页面不存在 代码 - 34
相关讨论可在互联网上找到:
11-13 16:46:55.481:W / System.err(1990):http://www.google.co.jp/search?q=9bf58966或 11-13 16:46:55.481:W / System.err(1990):http://www.google.co.jp/search?q=17d1fbfd 11-13 16:46:55.481:W / System.err(1990):TwitterException {exceptionCode = [9bf58966-17d1fbfd],statusCode = 404,message =抱歉,该页面不存在,代码= 34,retryAfter = -1 ,rateLimitStatus = null,version = 4.0.1} 11-13 16:46:55.481:W / System.err(1990):在twitter4j.HttpClientImpl.handleRequest(HttpClientImpl.java:164) 11-13 16:46:55.481:W / System.err(1990):在twitter4j.HttpClientBase.request(HttpClientBase.java:53) 11-13 16:46:55.481:W / System.err(1990):在twitter4j.HttpClientBase.post(HttpClientBase.java:82) 11-13 16:46:55.481:W / System.err(1990):在twitter4j.TwitterImpl.post(TwitterImpl.java:2004) 11-13 16:46:55.481:W / System.err(1990):在twitter4j.TwitterImpl.sendDirectMessage(TwitterImpl.java:368) 11-13 16:46:55.481:W / System.err(1990):at com.dman.tweetfragment.Fragments.MainFragment $ 6.run(MainFragment.java:993) 11-13 16:46:55.481:W / System.err(1990):at java.lang.Thread.run(Thread.java:856) 11-13 16:46:55.481:W / dalvikvm(1990):threadid = 24:线程退出未捕获的异常(组= 0xa6296288)
请在此提供您宝贵的建议。 谢谢。
答案 0 :(得分:1)
谢谢大家。我找到了答案。 我们必须传递 twitter用户screenName而不是screenId 。 screenId不适合我。我尝试使用screenName。它工作正常。
message = twitter.sendDirectMessage(friendscreenName, messsage);
答案 1 :(得分:-1)
检查friendId
。它必须是Long
。如果String
,则必须使用用户screenName
。