前回、認証の方法をさらっと書きましたが、今回は、usernameとidの取得方法について。
#import <Accounts/Accounts.h> ACAccountStore *aCAccountStore = [[ACAccountStore alloc] init]; ACAccountType *aCAccountType = [aCAccountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierTwitter]; [aCAccountStore requestAccessToAccountsWithType:aCAccountType withCompletionHandler:^(BOOL granted, NSError *error) { if (granted) { NSArray *account = [aCAccountStore accountsWithAccountType:aCAccountType]; NSUInteger count = [account count]; for (NSUInteger i=0; i<count; i++) { ACAccount *acAccount = [account objectAtIndex:i]; NSLog(@"twitter id is %@",[acAccount valueForKeyPath:@"properties.user_id"]); NSLog(@"username is %@",acAccount.username); } }else{ NSLog(@"not grandted"); } }];usernameはACAccountに記述されていたから問題はなかったのですが、user_idは迷いました。
いくつか検索してみて、ACAccount Twitterのuser_idを取得する
に
NSString *idStr = [self valueForKeyPath:@"properties.user_id"];という記述が書いてあったので、NSObjectクラスに標準装備されているvalueForKeyPathメソッドを使って取得することができましたー。
一度、こうしてまとめておけば次回以降は困ることがないので、いいですね。
0 コメント:
コメントを投稿