简体   繁体   中英

Cannot get data for the twitter timeline

I am trying to load the tweets through json since I am currently making an twitter app. No sign of getting data from json twitter. I also have an null output from my array as well. Is there a possible mistake that I made using the API?

-(void)twitterTimeLine{
    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) {
                    ACAccountType *twitterAccount = [arrayOfAccounts lastObject];
                    NSURL *requestAPI = [NSURL URLWithString:@"https://api.twitter.com/1.1/statuses/home_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 = (ACAccount *)twitterAccount;
                    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
                    [posts performRequestWithHandler:^(NSData *response, NSHTTPURLResponse *urlResponse, NSError *error){
                        array=[NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingMutableLeaves error:&error];
                        // NSLog(@"%@",posts);
                        NSLog(@"%@",array);
                        NSLog(@"---------");


                        if (array.count !=0) {
                             dispatch_async(dispatch_get_main_queue(),^{
                                 [timelineTableView reloadData];
                                 });
                        }
                     }];
                     [UIApplication sharedApplication].networkActivityIndicatorVisible = NO;
                 }
                 else {
                     NSLog(@"%@", [error localizedDescription]);
                 }
             };



         }];

Try this :

ACAccount *twitterAccount = [arrayOfAccounts lastObject];

This might be the reason of getting warning.

Update your URL with :

https://api.twitter.com/1.1/statuses/home_timeline.json

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM