我的问题涉及围绕 iPhone 上联系人列表的人员条目中的一些默认电话号码标签的标记。
我为一个人“John Smith”创建了一个 iPhone 联系人列表通讯录条目,其中包含以下电话号码条目:
- 手机 (604) 123-4567
- 苹果手机 (778) 123-4567
- 主页 (604) 789-4561
- 工作 (604) 456-7891
- 主要电话 (604) 789-1234
- 扩音器 (234) 567-8990
请注意,前五个标签是联系人应用程序提供的默认标签,最后一个标签“扩音器”是自定义标签。
我编写了以下方法来检索和显示通讯录中每个人的标签和电话号码:
-(void)displayPhoneNumbersForAddressBook {
ABAddressBookRef book = ABAddressBookCreate();
CFArrayRef people = ABAddressBookCopyArrayOfAllPeople(book);
ABRecordRef record = CFArrayGetValueAtIndex(people, 0);
ABMultiValueRef multi = ABRecordCopyValue(record, kABPersonPhoneProperty);
NSLog(@"---------" );
NSLog(@"displayPhoneNumbersForAddressBook" );
CFStringRef label, phone;
for (CFIndex i = 0; i < ABMultiValueGetCount(multi); ++i) {
label = ABMultiValueCopyLabelAtIndex(multi, i);
phone = ABMultiValueCopyValueAtIndex(multi, i);
NSLog(@"label: \"%@\" number: \"%@\"", (NSString*)label, (NSString*)phone);
CFRelease(label);
CFRelease(phone);
}
NSLog(@"---------" );
CFRelease(multi);
CFRelease(people);
CFRelease(book);
}
这是我输入的地址簿条目的输出:
2010-03-08 13:24:28.789 test2m[2479:207] ---------
2010-03-08 13:24:28.789 test2m[2479:207] displayPhoneNumbersForAddressBook
2010-03-08 13:24:28.790 test2m[2479:207] label: "_$!<Mobile>!$_" number: "(604) 123-4567"
2010-03-08 13:24:28.790 test2m[2479:207] label: "iPhone" number: "(778) 123-4567"
2010-03-08 13:24:28.791 test2m[2479:207] label: "_$!<Home>!$_" number: "(604) 789-4561"
2010-03-08 13:24:28.791 test2m[2479:207] label: "_$!<Work>!$_" number: "(604) 456-7891"
2010-03-08 13:24:28.792 test2m[2479:207] label: "_$!<Main>!$_" number: "(604) 789-1234"
2010-03-08 13:24:28.792 test2m[2479:207] label: "megaphone" number: "(234) 567-8990"
2010-03-08 13:24:28.793 test2m[2479:207] ---------
什么是标记字符
_$!< and >!$_
周边大部分,除了iPhone,默认标签是什么?
你能指出我在“iPhone OS 通讯簿编程指南”中的哪里可以找到信息吗?
谢谢您的帮助。