オブジェクトの説明は通常、デバッグと NSLog での出力に使用されるため、私の質問は素朴かもしれません。object.description を使用しようとする私のアプローチが間違っている可能性があることも認めなければなりません。ただし、私の場合、説明の情報が必要なものであることがわかりました。説明文から簡単に部品を抜き出せれば。
さて、ここに私のコードがあり、必要なのはユーザー名(ユーザー名ではありません)です:
self.facebookAccountStore = [[ACAccountStore alloc] init];
ACAccountType* facebookAccountType = [self.facebookAccountStore accountTypeWithAccountTypeIdentifier:ACAccountTypeIdentifierFacebook];
//[self.facebookAccountStore requestAccessToAccountsWithType:facebookAccountType withCompletionHandler:^(BOOL granted, NSError* e) {
[self.facebookAccountStore requestAccessToAccountsWithType:facebookAccountType options:facebookOptions completion:^(BOOL granted, NSError* e) {
if (granted) {
NSArray* accounts = [self.facebookAccountStore accountsWithAccountType:facebookAccountType];
self.facebookAccount = [accounts lastObject];
NSLog(@"acct description: %@", self.facebookAccount.description);
NSLog(@"acct type: %@", self.facebookAccount.accountType);
NSLog(@"acct credential: %@", self.facebookAccount.credential);
NSLog(@"acct identifier: %@", self.facebookAccount.identifier);
NSLog(@"acct username: %@", self.facebookAccount.username);
} else { //.....
}
アカウントの説明は次のとおりです。
acct description:
objectID: x-coredata://F8123001-FB33-48D4-B1A7-EXXXX1243XXXX/Account/p10
enabledDataclasses: {(
"com.apple.Dataclass.Contacts",
"com.apple.Dataclass.Calendars"
)}
enableAndSyncableDataclasses: {(
)}
properties: {
fullname = "LOOKAT HERE";
uid = 100004223213342323;
}
parentAccount: (null)
owningBundleID:(null)
type:com.apple.facebook
identifier: EF34399A-8577-459B-BE5E-FD12132SEDSFE
accountDescription: Facebook
username: pspped.ok@mailserver.com
この部分をチェックしてください: properties: { fullname = "LOOKAT HERE"; uid = 100004223213342323; }
これはまさに私が必要とするものです。これを使用すると、SLRequest や SLRequestMethodGET などを実行してユーザー名を取得する必要がなくなります (これはまだわかりませんが、オブジェクトの説明を使用しようとするもう 1 つの動機です)。
私の質問は、説明を解析して fullname プロパティを取得するのが間違っているかどうかです。間違っている場合、なぜですか?次の質問は、間違っているかどうかです。account.description. fullname または account.fullname なので、account.username は機能しますが機能しません。
お時間/ご入力いただきありがとうございます。