Получение идентификатора пользователя и / или имени пользователя намного проще, чем это.
iOS 7 версия
ACAccount *account = accountsArray[0];
NSString *userID = ((NSDictionary*)[account valueForKey:@"properties"])[@"user_id"];
или
ACAccount *twitterAccount = accountsArray[0];
NSRange range = [account.description rangeOfString:@" [0-9]{7,8}"
options:NSRegularExpressionSearch];
if (range.location != NSNotFound) {
NSString *userID = [[account.description substringWithRange:range] stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]];
NSLog(@"User ID: %@", userID);
}
Версия iOS 5
Существовал недокументированный метод ACAccount, называемый accountProperties типа NSDictionary с ключом user_id.
ACAccount *twitterAccount = [accountsArray objectAtIndex:0];
NSString *userID = [[twitterAccount accountProperties] objectForKey:@"user_id"];
NSString *username = twitterAccount.username;
** Не работает под iOS6, поскольку метод больше не определен.