Я недавно начал проект Xcode, и он требует, чтобы я получал фид или временную шкалу из учетной записи Twitter. Я следую this tutorial. Хотя, когда я компилирую свой код, у него нет ошибок, он не записывает никаких твитов. Я также загрузил исходный код для проекта, но он все равно ничего не возвращает. Я понимаю, что это может быть проблемой из моей учетной записи, но я недавно что-то написал в твиттере, последовал за некоторыми людьми, переработал, в основном все, что вы могли сделать, чтобы обновить временную шкалу! Спасибо за помощь! Twitter счета: @PushahkУчетная запись Twitter всегда возвращает пустую временную шкалу?
-(void)getTwitterFeed{
ACAccountStore *account = [[ACAccountStore alloc] init];
ACAccountType *accountType = [account accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[account requestAccessToAccountsWithType:accountType options:nil completion:^(BOOL granted, NSError *error){
if (granted == YES) {
NSArray *arrayOfAccounts = [account accountsWithAccountType:accountType];
if ([arrayOfAccounts count] > 0) {
ACAccount *twitterAccount = [arrayOfAccounts lastObject];
NSURL *requestAPI = [NSURL URLWithString:@"http://api.twitter.com/1.1/statuses/user_timeline.json"];
NSMutableDictionary *parameters = [[NSMutableDictionary alloc] init];
[parameters setObject:@"100" forKey:@"count"];
[parameters setObject:@"1" forKey:@"include_entities"];
SLRequest *posts = [SLRequest requestForServiceType:SLServiceTypeTwitter requestMethod:SLRequestMethodGET URL:requestAPI parameters:parameters];
posts.account = twitterAccount;
[posts performRequestWithHandler:
^(NSData *response, NSHTTPURLResponse
*urlResponse, NSError *error)
{
// The NSJSONSerialization class is then used to parse the data returned and assign it to our array.
self.TwitterPosts = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];
dispatch_async(dispatch_get_main_queue(), ^{
NSLog(@"Hi");
for (int i = 0; i < [self.TwitterPosts count]; i++) {
NSLog(@"%@", [self.TwitterPosts objectAtIndex:i]);
NSLog(@"Hi");
}
});
}];
}
}
else{
NSLog(@"%@", [error localizedDescription]);
}
}];
}
Проходите в объекте ошибок в 'JSONObjectWithData', делает это содержит ничего после этого? Вы также можете собрать «NSString» из ответа «NSData», чтобы узнать, что он содержит, это может предоставить дополнительную информацию. Этот код должен быть более чувствительным к ошибкам, на данный момент он предполагает, что все будет правильно. – WDUK
Это также может быть связано с тем, что 'include_entities' больше не является допустимым параметром в API v1.1 (он был в API v1). Вам также может потребоваться указать имя экрана, так как я полагаю, что свойство '.account' в запросе предназначено только для целей OAuth. Источник: https://dev.twitter.com/docs/api/1.1/get/statuses/user_timeline – WDUK
@WDUK, это было фактически второе! Благодаря! Если вы опубликуете ответ, я буду считать его правильным! – chandhooguy