我已经成功完成了这个:http://www.sitepoint.com/loading-twitter-data-into-android-with-lists/教程并让我的应用根据搜索条件显示推文。
我希望我的应用做的是显示特定用户的时间轴。
从那个教程我已经用这个取代了我的获取线:
HttpGet("http://api.twitter.com/1/statuses/user_timeline.json?screen_name=android");
我的listview没有结果..我不需要验证用户名和密码,因为我想要做的就是显示时间轴,而不是操纵它。
答案 0 :(得分:2)
如果您使用Twitter4j,这很简单:
public final class GetTimelines {
/**
* Usage: java twitter4j.examples.GetTimelines ID Password
* @param args String[]
*/
public static void main(String[] args) {
Twitter unauthenticatedTwitter = new TwitterFactory()
.getInstance();
System.out.println("Showing public timeline.");
try {
List<Status> statuses = unauthenticatedTwitter
.getPublicTimeline();
for (Status status : statuses) {
System.out.println(status.getUser().getName() + ":"
+ status.getText());
}
if (args.length < 2) {
System.out
.println("You need to specify TwitterID/Password combination to show UserTimelines.");
System.out
.println("Usage: java twitter4j.examples.GetTimelines ID Password");
System.exit(0);
}
// Other methods require authentication
Twitter twitter = new TwitterFactory().getInstance(args[0],
args[1]);
statuses = twitter.getFriendsTimeline();
System.out.println("------------------------------");
System.out.println("Showing " + args[0]
+ "'s friends timeline.");
for (Status status : statuses) {
System.out.println(status.getUser().getName() + ":"
+ status.getText());
}
statuses = twitter.getUserTimeline();
System.out.println("------------------------------");
System.out.println("Showing " + args[0] + "'s timeline.");
for (Status status : statuses) {
System.out.println(status.getUser().getName() + ":"
+ status.getText());
}
Status status = twitter.showStatus(81642112l);
System.out.println("------------------------------");
System.out.println("Showing " + status.getUser().getName()
+ "'s status updated at " + status.getCreatedAt());
System.out.println(status.getText());
System.exit(0);
} catch (TwitterException te) {
System.out.println("Failed to get timeline: "
+ te.getMessage());
System.exit(-1);
}
}
}
取自here
的样本答案 1 :(得分:0)
您可以在https://github.com/robhinds/AndroidTwitterDemo
获得问题的答案或
http://automateddeveloper.blogspot.com/2011/06/android-twitter-oauth-authentication.html
使用twitter4j jar进行相同的
希望能帮到你...答案 2 :(得分:0)
如果您只想获取用户时间线而不是最佳方式 -
twitter4j jar文件 - http://twitter4j.org/archive/twitter4j-3.0.3.zip
要注册您的应用,请访问dev.twitter.com
我们可以使用twitter oauth获取使用时间表,对于此过程,我们不需要提供任何用户凭据
ConfigurationBuilder builder = new ConfigurationBuilder();
builder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY);
builder.setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET);
builder.setOAuthAccessToken(TWITTER_ACCESS_KEY);
builder.setOAuthAccessTokenSecret(TWITTER_ACCESS_SECRET);
Configuration configuration = builder.build();
TwitterFactory factory = new TwitterFactory(configuration);
Twitter twitter = factory.getInstance();
Paging page = new Paging();
page.setCount(100);
List<Status> statuses = new ArrayList<Status>();
statuses = twitter.getUserTimeline("write username here", page);
for (Status status : statuses) {
System.out.println("title is : " + status.getText());
}
答案 3 :(得分:0)
Twitter已经为您的需求推出了Fabric SDK。这是一个网站:Twitter Fabric。安装SDK时,您的Android工作室将为Fabric Sdk添加新图标。您必须安装Twitter工具包并使用嵌入推文。对于用户时间线,您必须使用UserTimeline。此外,您在github中有一些项目可以帮助您了解Twitter工具包的工作原理: Github repo