1

我正在将 twitter 集成到我的 android 应用程序中。它在 Twitter 上成功登录了我,但我不知道如何从中获取推文和状态,以便我可以在我的应用程序中显示它。这是我的代码。

String CONSUMER_KEY = "XXXXXXXXXXXXXXX";  
         String CONSUMER_SECRET = "YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY";  

         try {  
             twitter = new TwitterFactory().getInstance();  
             twitter.setOAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET);  
             requestToken = twitter.getOAuthRequestToken();  
             AccessToken accessToken = null;  
             String url = requestToken.getAuthorizationURL();  
             Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));  
             startActivity(intent);                                   
         }  
         catch (TwitterException e){  
             e.printStackTrace();  
         }  

任何帮助将不胜感激。

4

2 回答 2

2

如果您使用signpost,您可以处理登录部分,而无需用户引入 pin,一旦您拥有令牌和验证器,您就可以继续使用 twitter4j,创建对象 twitterTwitterFactory twitterfact=new TwitterFactory(); twitter = twitterfact.getOAuthAuthorizedInstance(consumerKey, consumerSecret,accessToken);

现在您可以使用 显示时间线twitter.getFriendsTimeLine()。我就是这样做的,而且效果很好。我可以发推文、阅读推文、发送私人信息……而且登录部分不会失败。

于 2011-02-11T00:28:35.690 回答
1

只要您twitter正确填充了变量(即您的代码不会引发异常),您就可以使用它来twitter.getHomeTImeline()等等。

话虽如此,您的代码看起来只执行 OAuth 过程的第一部分,并且您仍然需要有代码来设置用户接收的 pin,然后创建完全 OAuth 授权的连接。

例如,看看Zwitscher的 LoginActivity(v0.65 标签)。该方法getPinButton()基本上就是您上面的方法。当用户回来时,他在 EditText 中输入 pin 并单击[setPinButton()][2]提供 OAuth 内容的第二部分的 。

然后将 OAuth 密钥和令牌存储在首选项中以供以后使用(您需要它们通过 TwitterFactory 创建经过身份验证的 Twitter 实例(参见例如TwitterHelper.getTwitter()如何执行此操作)。

于 2011-02-10T10:53:12.907 回答