2013-02-19 12 views
6

私はリストフィードでつぶやきを表示する必要があるのiOSアプリケーションを作ってるんだ[アプリのユーザーを必要とせずにはツイッターに署名します]私はセットアップしている。問題は、[私はエンドユーザのツイッターアカウントをまったく使用したくない]ということです。ちょうどTwitter APIを使ってそのデータをプルすることで、その1つのリストフィードをアプリに表示したいだけです。Twitterのフィード - 私はちょうど私の自身のアカウントからのリストのフィードを取得する方法

残念ながら私のために、バージョン1.1の後、TwitterのAPIは、それで何かをする認証が必要です。

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

私が見てきた例はすべて、働く、でフィードをプルするiOSの内、エンドユーザのログインを使用しますが、ここに私の問題ですされています

私は、リストのために、これらの要求を認証できますiOS上で自分のTwitterアカウントにログインする必要があるアプリを使用しているエンドユーザーはいない。つまり、リクエストは1つの特定のTwitterアカウント[mine]で認証されますか?

Twitter APIを使用しないで生のフィードデータを取得する方法がある場合[私のアプリ内でUITableViewに配置するために生データを必要とします。UIWebViewを使用したくありません]。

これは、[リストのフィードはとにかく公開されているので、それが最初の場所での認証を必要とする理由私は知らない] Twitterアカウントなしでエンドユーザーがフィードにアクセスできるようになります。

多くの感謝!

+0

あなたのアカウント(https://twitter.com/settings/widgets)を使用してweb用のリストウィジェットを作成しようとしましたが、その特定のリストの公開エンドポイントを取得するためにJSコードを調べて、アプリをソースとして使用しますか?私は 'localhost'が自動的にサポートされていることを知っているので、アプリを使って技術的にそれをローカルに取得することは可能でなければなりません - しかし、私は試していませんでした。 – f055

答えて

14

****更新:答えhttps://stackoverflow.com/a/15419005/1228669

次**彼らのISは、このアプローチで要求制限の問題のようです、使用それはSTTwitterを使用して、

それは要求制限

をチェックする方法が含まれています
- (void)getRateLimitsForResources:(NSArray *)resources // eg. statuses,friends,trends,help 
       successBlock:(void(^)(NSDictionary *rateLimits))successBlock 
        errorBlock:(void(^)(NSError *error))errorBlock { 

詳細はTwitter 1.1 API Limit

を訪問するために、今のAPIの制限は、15分間隔のためであるとして、現在のAPIの制限をチェックするために、このメソッドを使用します

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

まだ解決策が見つからない場合は、それは

トークンとシークレットアクセスを作成するボタン

「私のアクセストークンを作成をクリックし、」アプリの情報ページの下部にツイッターで

https://dev.twitter.com/apps

2にアプリを登録

1このアプローチを試してみてください

3さえずりエンジンへのアクセストークンを設定するには、次のコードをダウンロードFHSTwitterEngine

https://github.com/fhsjaagshs/FHSTwitterEngine

使用

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

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

あなたがツイート

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

を取得するには、この方法を試すことができます。また必ずSystemConfigurationを作ります.frameworkがプロジェクトに追加されました

+0

どのように私はフォロワーと人名をフォローするのですか? – Jitendra

1

STTwitterライブラリを使用して、あなたはTwitterでログインせずに、すべてのタイムラインを取得するためか、スクリーンネームを使用して、特定のリストのための方法がある最初のあなたは、キーの消費者とシークレット設定フィードを取得することができます。

self.twitter = [STTwitterAPI twitterAPIAppOnlyWithConsumerKey:kTwitterConsumerKey 
               consumerSecret:kTwitterSecretKey]; 

をしてから、画面を使用して、リストからタイムラインを取得します名前:

[_twitter verifyCredentialsWithSuccessBlock:^(NSString *bearerToken) { 
    // NSLog(@"Access granted with %@", bearerToken); 

    // load user tweets according to list 
    [_twitter getListsStatusesForSlug:kSlug screenName:kScreenName ownerID:nil sinceID:nil maxID:nil count:nil includeEntities:0 includeRetweets:0 successBlock:^(NSArray *statuses) { 
     //your code for getting feeds from array statuses 
    } errorBlock:^(NSError *error) { 
     NSLog(@"-- error: %@", error); 
    }]; 

} errorBlock:^(NSError *error) { 
    NSLog(@"-- error %@", error); 
}]; 

これは私のために働いて、あなたが状態を確認するためフォロワーリスト使用FHSTwitterエンジンおよび方法を取得したい場合は次のとおりです。

[[FHSTwitterEngine sharedEngine] lookupFriendshipStatusForUsers:users areIDs:NO]; 
関連する問題