我想从twitter获取用户主页。
我想知道我们可以通过其获取用户主页Feed的网址查询。目前使用OAuth lib从twitter授权。完成了。
是否有任何查询网址,例如搜索推文twitter search feed url query
我们通过它获得家庭饲料和用户状态。
应该写什么查询来获取twitter home feed?
答案 0 :(得分:1)
好吧,如果您使用Twitter成功通过身份验证,则无需查询URL即可获取登录用户的时间轴。即使你可以,我也不知道。
话虽如此,我用它来获取时间轴:
ConfigurationBuilder builder = new ConfigurationBuilder();
// GET THE CONSUMER KEY AND SECRET KEY FROM THE STRINGS XML
String TWITTER_CONSUMER_KEY = getString(R.string.TWITTER_CONSUMER_KEY);
String TWITTER_CONSUMER_SECRET = getString(R.string.TWITTER_CONSUMER_SECRET);
// TWITTER ACCESS TOKEN
String twit_access_token = twitPrefs.getString(PREF_KEY_OAUTH_TOKEN, "");
// TWITTER ACCESS TOKEN SECRET
String twit_access_token_secret = twitPrefs.getString(PREF_KEY_OAUTH_SECRET, "");
builder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY);
builder.setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET);
builder.setOAuthAccessToken(twit_access_token);
builder.setOAuthAccessTokenSecret(twit_access_token_secret);
AccessToken accessToken = new AccessToken(twit_access_token, twit_access_token_secret);
Twitter twitter = new TwitterFactory(builder.build()).getInstance(accessToken);
Paging paging = new Paging(1, 20);
statuses = twitter.getHomeTimeline(paging);
// NOW LOOP THROUGH THE statuses AND FETCH INDIVIDUAL DETAILS
for (int i = 0; i < statuses.size(); i++) {
String strTweetID = String.valueOf(statuses.get(i).getId());
.... REST OF WHATEVER YOU NEED TO PULL OUT OF THE
}
有关示例中使用的实例的一些信息:
1:示例中使用的行statuses = twitter.getHomeTimeline(paging);
statuses
是List<Status>
的实例,声明为全局变量:
List<Status> statuses = new ArrayList<Status>();
2:twitPrefs
是SharePreferences
的一个实例,用于存储 OAuth令牌和 OAuth密钥。您需要使用自己的检索数据的方法替换它。
3:从String TWITTER_CONSUMER_KEY = getString(R.string.TWITTER_CONSUMER_KEY);
中提取String TWITTER_CONSUMER_SECRET = getString(R.string.TWITTER_CONSUMER_SECRET);
和strings.xml
。与上面的第二点类似,使用您目前使用的任何方法来检索所述细节。
替代解决方案:
如果您希望获得 JSON 响应,请对上述代码进行此更改:
builder.setOAuthConsumerKey(TWITTER_CONSUMER_KEY);
builder.setOAuthConsumerSecret(TWITTER_CONSUMER_SECRET);
builder.setOAuthAccessToken(twit_access_token);
builder.setOAuthAccessTokenSecret(twit_access_token_secret);
builder.setJSONStoreEnabled(true);
try {
Paging paging = new Paging(offSet, 5);
statuses = twitter.getHomeTimeline(paging);
try {
String strInitialDataSet = DataObjectFactory.getRawJSON(statuses);
JSONArray JATweets = new JSONArray(strInitialDataSet);
for (int i = 0; i < JATweets.length(); i++) {
JSONObject JOTweets = JATweets.getJSONObject(i);
String tweetID = JOTweets.getString("id");
.... OTHER DETAILS YOU NEED.
}
} catch (Exception e) {
}
} catch (Exception e) {
}