1

我想使用我的 android 应用程序向用户的关注者发送直接消息。我尝试了以下代码

      String access_token = mSharedPreferences.getString(
                        Constants.PREF_KEY_OAUTH_TOKEN, "");
                // Access Token Secret
                String access_token_secret = mSharedPreferences.getString(
                        Constants.PREF_KEY_OAUTH_SECRET, "");

                ConfigurationBuilder builder = new ConfigurationBuilder();
                builder.setDebugEnabled(true);
                builder.setOAuthConsumerKey(Constants.TWITTER_CONSUMER_KEY);
                builder.setOAuthConsumerSecret(Constants.TWITTER_CONSUMER_SECRET);
                builder.setOAuthAccessToken(access_token);
                builder.setOAuthAccessTokenSecret(access_token_secret);


                TwitterFactory tf = new TwitterFactory(builder.build());
                Twitter twitter = tf.getInstance();


                DirectMessage message = null;
                try {
                    message = twitter.sendDirectMessage(
                            frndsDetails.get(position).getId(), "Hi");
                    System.out.println("Sent: " + message.getText()
                            + " to @" + message.getRecipientScreenName());

                } catch (TwitterException e) {
                    // TODO Auto-generated catch block
                    Log.e("Twitter exception", "" + e.getMessage());
                    e.printStackTrace();
                }

但得到以下异常

02-26 13:48:16.287:E/Twitter 异常(707):404:请求的 URI 无效或请求的资源(例如用户)不存在。当请求的方法不支持请求的格式时也返回。02-26 13:48:16.287:E/Twitter 异常(707):消息 - 抱歉,该页面不存在 02-26 13:48:16.287:E/Twitter 异常(707):代码 - 34 02-26 13 :48:16.397: W/System.err(707): 在 android.view.View.performClick(View.java:3511)

有没有其他发送直接消息的方法。请帮助我。提前致谢。

4

1 回答 1

1

我在我的应用程序中使用以下代码向关注者发送直接消息。可能这对你有帮助。

StringBuilder builder = new StringBuilder();
builder.append("@").append(twitterFriendObj.screenName).append(" ");
Status status = twitter.updateStatus(builder+"Hi this is test message");

在这里,我们需要发送关注者屏幕名称以发送直接消息。

于 2013-02-26T13:07:27.387 回答