私のアプリでは、iPhone の設定で Twitter アカウントにサインインしていないときに、Twitter からツイートを取得したいと考えています。実際には、ユーザーのツイート (ツイートしたもの) のみを取得しています。しかし、私はすべてのフォロワーのツイートを取得したい.
この URL を使用しています: http://api.twitter.com/1/statuses/user_timeline.json
これに変更します: http://api.twitter.com/1/statuses/home_timeline.json エラーが発生しました。エラー: キャッチされていない例外 'NSInvalidArgumentException' が原因でアプリを終了しています。理由: ' * -[__NSArrayM insertObject:atIndex:]: オブジェクトを nil にすることはできません'
私はこのコードを使用しています。
- (IBAction)twitterButtonPressed:(UIButton *)sender
{
[self.usernameTextField resignFirstResponder];
self.nameString = self.usernameTextField.text;
NSURL *timelineUrl = [NSURL URLWithString:@"http://api.twitter.com/1/statuses/home_timeline.json"];
NSMutableDictionary *parameters =
[[NSMutableDictionary alloc] init];
[parameters setObject:self.nameString forKey:@"screen_name"];
[parameters setObject:@"50" forKey:@"count"];
[parameters setObject:@"1" forKey:@"include_entities"];
SLRequest *postRequest = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:SLRequestMethodGET URL:timelineUrl parameters:parameters];
[postRequest performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error)
{
if (responseData != nil)
{
NSError *error = nil;
self.dataSource = [NSJSONSerialization JSONObjectWithData:responseData options:NSJSONReadingMutableLeaves error:&error];
NSLog(@" tweet inindex 0 %@",[self.dataSource valueForKey:@"text"]);
NSLog(@"ghjgjhdgjhdgjsgdjgsdjg %d",dataSource.count);
if (self.dataSource.count)
{
[self performSelectorOnMainThread:@selector(homeView) withObject:nil waitUntilDone:YES];
}
}
}];
}