アプリ ユーザーの Twitter ハンドルのユーザー名を見つけたかったので、次のコードを使用しました。
ACAccountStore *accountStore = [[ACAccountStore alloc] init];
ACAccountType *accountType = [accountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter];
[accountStore requestAccessToAccountsWithType:accountType options:nil completion:^(BOOL granted, NSError *error) {
if (granted) {
NSArray *accounts = [accountStore accountsWithAccountType:accountType];
次に、返された各 ACAccounts からユーザー名プロパティを取得しました。ただし、Twitter のユーザー名を変更しても、iOS は引き続き新しいユーザー名で動作しますが、レコードに古いユーザー名が保持されるため、username プロパティを返すと実際には古いユーザー名が返されることがわかりました。これを表示したり、一致させたりすることはできません。何に対しても。
次のようにして、ユーザー ID を取得できます。
NSDictionary *tempDict = [[NSMutableDictionary alloc] initWithDictionary:
[twitterAccount dictionaryWithValuesForKeys:[NSArray arrayWithObject:@"properties"]]];
NSString *tempUserID = [[tempDict objectForKey:@"properties"] objectForKey:@"user_id"];
そのユーザー ID を使用して実際のユーザー名を調べるにはどうすればよいでしょうか?