ACAccountからTwitterのuser_id
を取得する方法です。
実装
ACAccountのカテゴリにしました。
ACAccount+Extras.h
@interface ACAccount (Extras)
- (NSString*)user_id_String;
@end
ACAccount+Extras.m
@implementation ACAccount (Extras)
- (NSString *)user_id_String
{
NSString *idStr = [self valueForKeyPath:@"properties.user_id"];
// 今後の仕様変更に備えて確認
NSAssert1(idStr != nil && [idStr isKindOfClass:[NSString class]] , @"ACAccount(Extras) %@", self);
return idStr;
}
@end
補足
Twitterでは特定のユーザーを指定する方法でuser_id
とscreen_name
があります。
screen_name
はACAccountのusernameで取得出来ます。screen_name
は変更することも出来ます。
user_id
はscreen_name
が変更されても変更されることのないユーザーを識別する一意の値ですので、ユーザー管理は基本user_id
でした方がよいかと思われます。
参考