Twitter feed in an iOS app - how can i get a list feed just from my own account [without needing the app user to be signed into twitter]

james.ff picture james.ff · Feb 19, 2013 · Viewed 9.5k times · Source

I'm making an iOS App that needs to show tweets in a List feed that i have set up. The problem is that [i don't want to use the end user's twitter account at all], i just want to show that one list feed in the app, by pulling its data in through the Twitter API.

Unfortunately for me, the Twitter API after version 1.1, requires authentication to do anything with it.

https://dev.twitter.com/docs/api/1.1/get/lists/statuses#example-request

All of the cases i have seen are using the end user's login within iOS to pull feeds in, which works, but here is my issue:

Can I authenticate these requests for the list feed, without the end user who is using the app needing to be signed into their own twitter account on iOS. i.e. the requests are authenticated with one specific twitter account [mine]?

or if there is a way to get the raw feed data without using the twitter API [i need to raw data to place into a UITableView within my app - i don't want to use a UIWebView].

this would make the feed accessible to end users without a twitter account [the list feed is public anyway, so i don't know why it needs authentication in the first place].

Many thanks!

Answer

prasad picture prasad · Apr 25, 2013

Update: Their is seems to be a request limit issue in this approach, use following answer https://stackoverflow.com/a/15419005/1228669

It uses STTwitter,

It contains a method to check request limit

- (void)getRateLimitsForResources:(NSArray *)resources // eg. statuses,friends,trends,help
                 successBlock:(void(^)(NSDictionary *rateLimits))successBlock
                   errorBlock:(void(^)(NSError *error))errorBlock {

use this method to check current api limit, as now the api limit is for 15 mins interval, for more details visit Twitter 1.1 API Limit

=================================

If you haven't found solution yet, you can try this approach

  1. Register your app at twitter https://dev.twitter.com/apps

  2. On bottom of app information page "click on Create my access token" button it will create access token and secret

  3. Download FHSTwitterEngine https://github.com/fhsjaagshs/FHSTwitterEngine

Use following code to set access token to twitter engine:

self.engine = [[FHSTwitterEngine alloc]initWithConsumerKey:@"yourAppConsKey" andSecret:@"yourAppsecret"];
OAToken *token = [[OAToken alloc] init];

token.key = @"setaccessToken";
token.secret = @"setAccessTokenSecret";
[self.engine setAccessToken:token];

You can try this method to get tweets

[self.engine getTimelineForUser:username isID:NO count:1];

Also make sure SystemConfiguration.framework is added in your project