Ссылка ABAddressBook C
ABAddressBook непрозрачный тип обеспечивает интерфейс программирования для Адресной книги — централизованная база данных, используемая многократными приложениями для хранения контакта и других персональных данных о людях. База данных Address Book также поддерживает понятие «группы», содержащей одно или более лиц. Люди могут принадлежать многократным группам, и группы могут также принадлежать другим группам.
ABAddressBook непрозрачный тип обеспечивает функции для доступа, добавления и удаления группы и записей лица включая «меня» запись, соответствующая зарегистрированному пользователю. Например, Вы используете ABCopyArrayOfAllGroups функция для получения массива всей группы записывает в базе данных, или ABCopyArrayOfAllPeople функция для получения всех записей лица. Вы используете ABGetMe функция для получения соответствия записи лица зарегистрированному пользователю. Можно также добавить и удалить записи с помощью ABAddRecord и ABRemoveRecord функции.
Можно также искать записи, соответствующие определенный запрос, который Вы указываете путем создания объекта ABSearchElement. Вы используете ABGroupCreateSearchElement или ABPersonCreateSearchElement функция для создания ABSearchElement возражает для соответствующей записи. Тогда используйте ABCopyArrayOfMatchingValues Функция ABAddressBook, передавая ABSearchElement как параметр, для запросов базы данных. Посмотрите ABSearchElement для большего количества функций, создающих составные запросы.
Ваше приложение использует совместно используемый экземпляр ABAddressBook, возвращенного ABGetSharedAddressBook функция для взаимодействия с базой данных (многократные экземпляры ABAddressBook не поддерживаются). Изменения, которые Вы вносите в рекордные объекты, сохранены в памяти и сохраняются на диск, когда Вы вызываете ABSave функция.
Адресная книга отправляет уведомления, если какое-либо приложение включая Ваш вносит изменения в базу данных. Как правило, Вы наблюдаете, что эти уведомления обновляют любое зависимое представление или объекты модели в Вашем приложении. Используйте CFNotificationCenter для регистрации для уведомлений ABAddressBook: kABDatabaseChangedNotification и kABDatabaseChangedExternallyNotification. Эти уведомления не отправляются до ABGetSharedAddressBook вызывается.
ABAddressBook непрозрачный тип “бесплатный соединенный мостом” с его дубликатом Objective C. Это означает что ABAddressBookRef тип является взаимозаменяемым в вызовах функции или вызовах метода с экземплярами класса ABAddressBook.
-
Добавляют данные свойства ко всем записям указанного типа в базе данных Address Book и возвращают число свойств, успешно добавленных.
Объявление
Swift
func ABAddPropertiesAndTypes(_addressBook: ABAddressBook!, _recordType: CFString!, _propertiesAndTypes: CFDictionary!) -> CFIndexObjective C
CFIndex ABAddPropertiesAndTypes ( ABAddressBookRef addressBook, CFStringRef recordType, CFDictionaryRef propertiesAndTypes );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordTypeТип записи Вы хотите добавить свойства к:
kABGroupRecordTypeилиkABPersonRecordType.propertiesAndTypesОбъект CFDictionary, содержащий свойства для добавления. В каждой словарной статье ключ является строкой с именем свойства, и значение является константой с типом свойства. Имя свойства должно быть уникальным. Можно хотеть использовать имена пакета стиля Java для свойств, например,
"org.dogclub.dogname"или"com.mycompany.customerID". Тип свойства должен быть одной из констант, описанных вProperty Types.Возвращаемое значение
Число свойств успешно добавило.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Добавляет запись указанного типа к базе данных Address Book.
Объявление
Swift
func ABAddRecord(_addressBook: ABAddressBook!, _record: ABRecordRef) -> BoolObjective C
bool ABAddRecord ( ABAddressBookRef addressBook, ABRecordRef record );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordЗапись для добавления к базе данных Address Book. Если этот параметр
NULL, функция повышает исключение.Возвращаемое значение
trueесли запись была добавлена успешно,falseиначе.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает массив всех групп в базе данных Address Book.
Объявление
Swift
func ABCopyArrayOfAllGroups(_addressBook: ABAddressBook!) -> Unmanaged<CFArray>!Objective C
CFArrayRef ABCopyArrayOfAllGroups ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
Массив объектов ABGroup, представляющих все группы в базе данных Address Book. Если база данных не содержит групп, функция возвращает пустой массив. Вы ответственны за выпуск этого объекта.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.3 и позже.
-
Возвращает массив всех людей в базе данных Address Book.
Объявление
Swift
func ABCopyArrayOfAllPeople(_addressBook: ABAddressBook!) -> Unmanaged<CFArray>!Objective C
CFArrayRef ABCopyArrayOfAllPeople ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
Массив объектов АБПЕРСОНА, представляющих всех людей в базе данных Address Book. Если база данных не содержит людей, функция возвращает пустой массив. Вы ответственны за выпуск этого объекта.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.3 и позже.
-
Возвращает массив записей, соответствующих данный поисковый элемент или пустой массив, если никакие записи не соответствуют поисковый элемент.
Объявление
Swift
func ABCopyArrayOfMatchingRecords(_addressBook: ABAddressBook!, _search: ABSearchElement!) -> Unmanaged<CFArray>!Objective C
CFArrayRef ABCopyArrayOfMatchingRecords ( ABAddressBookRef addressBook, ABSearchElementRef search );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
searchПоисковый элемент, указывающий запрос. Если
searchNULL, эта функция повышает исключение. Создайте объект ABSearchElement использование рекордных определенных функций:ABGroupCreateSearchElementилиABPersonCreateSearchElement. Посмотрите ABSearchElement для большего количества функций, создающих составные запросы.Возвращаемое значение
Новый массив, содержащий объекты ABRecord, представляющие все записи то соответствие
search. Если не соответствуют никакие записиsearch, эта функция возвращает пустой массив. Вы ответственны за выпуск этого объекта.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает массив, содержащий имена всех свойств для указанного типа записи.
Объявление
Swift
func ABCopyArrayOfPropertiesForRecordType(_addressBook: ABAddressBook!, _recordType: CFString!) -> Unmanaged<CFArray>!Objective C
CFArrayRef ABCopyArrayOfPropertiesForRecordType ( ABAddressBookRef addressBook, CFStringRef recordType );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordTypeУказывает тип записи:
kABGroupRecordTypeилиkABPersonRecordType.Возвращаемое значение
Новый массив, содержащий имена (объекты CFString) всех свойств в
recordType. Вы ответственны за выпуск этого объекта.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает код страны по умолчанию для записей с неуказанными кодами стран.
Объявление
Swift
func ABCopyDefaultCountryCode(_addressBook: ABAddressBook!) -> Unmanaged<CFString>!Objective C
CFStringRef ABCopyDefaultCountryCode ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
Строка с кодом страны по умолчанию. Вы ответственны за выпуск этого объекта.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.3 и позже.
-
Возвращает имя типа записи, соответствующей данный уникальный идентификатор.
Объявление
Swift
func ABCopyRecordTypeFromUniqueId(_addressBook: ABAddressBook!, _uniqueId: CFString!) -> Unmanaged<CFString>!Objective C
CFStringRef ABCopyRecordTypeFromUniqueId ( ABAddressBookRef addressBook, CFStringRef uniqueId );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
uniqueIdУникальный идентификатор для записи. Если это
NULL, эта функция повышает исключение.Возвращаемое значение
Строка с именем типа для записи, соответствующей данный уникальный идентификатор. Вы ответственны за выпуск этого объекта.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.3 и позже.
-
Возвращает запись, соответствующую данный уникальный идентификатор.
Объявление
Swift
func ABCopyRecordForUniqueId(_addressBook: ABAddressBook!, _uniqueId: CFString!) -> ABRecordRefObjective C
ABRecordRef ABCopyRecordForUniqueId ( ABAddressBookRef addressBook, CFStringRef uniqueId );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
uniqueIdУникальный идентификатор для записи. Если это
NULL, эта функция повышает исключение.Возвращаемое значение
Запись, соответствующая данный уникальный идентификатор. Если не соответствует никакая запись
uniqueId, функциональные возвратыNULL. Вы ответственны за выпуск этого объекта.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает строку, содержащую отформатированный адрес.
Объявление
Swift
func ABCreateFormattedAddressFromDictionary(_addressBook: ABAddressBook!, _address: CFDictionary!) -> Unmanaged<CFString>!Objective C
CFStringRef ABCreateFormattedAddressFromDictionary ( ABAddressBookRef addressBook, CFDictionaryRef address );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
Возвращает строку, содержащую отформатированный адрес. Вы ответственны за выпуск этого объекта.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.3 и позже.
-
Возвращает объект АБПЕРСОНА для зарегистрированного пользователя.
Объявление
Swift
func ABGetMe(_addressBook: ABAddressBook!) -> Unmanaged<ABPerson>!Objective C
ABPersonRef ABGetMe ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
Запись АБПЕРСОНА, представляющая зарегистрированного пользователя, или
NULLесли пользователь никогда не указывал такую запись. Вы ответственны за сохранение и выпуск этого объекта по мере необходимости.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает уникальный совместно используемый объект ABAddressBook.
Объявление
Swift
func ABGetSharedAddressBook() -> Unmanaged<ABAddressBook>!Objective C
ABAddressBookRef ABGetSharedAddressBook ( void );Возвращаемое значение
Адресная книга для зарегистрированного пользователя. Вы ответственны за сохранение и выпуск этого объекта по мере необходимости.
Обсуждение
Каждое приложение совместно использует адресную книгу для зарегистрированного пользователя, и эта функция возвращает его. Если Вы вызываете эту функцию несколько раз или пытаетесь создать новую адресную книгу, Вы получаете указатель на ту же совместно используемую адресную книгу.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвраты, ли, если там не сохраняются изменения в адресной книге.
Объявление
Swift
func ABHasUnsavedChanges(_addressBook: ABAddressBook!) -> BoolObjective C
bool ABHasUnsavedChanges ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
trueесли там не сохраняются изменения,falseиначе.Обсуждение
Несохраненный флаг изменений установлен автоматически каждый раз, когда изменения внесены в адресную книгу.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Удаляет данные свойства из всех записей этого типа в базе данных Address Book и возвращает число свойств, успешно удаленных.
Объявление
Swift
func ABRemoveProperties(_addressBook: ABAddressBook!, _recordType: CFString!, _properties: CFArray!) -> CFIndexObjective C
CFIndex ABRemoveProperties ( ABAddressBookRef addressBook, CFStringRef recordType, CFArrayRef properties );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordTypeИмя записи для удаления свойств из:
kABGroupRecordTypeилиkABPersonRecordType.propertiesМассив свойств (объекты CFString) для удаления.
Возвращаемое значение
Число свойств успешно удалено.
Обсуждение
Только пользовательские свойства могут быть удалены. Эта функция не реализована.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Удаляет указанную запись из базы данных Address Book.
Объявление
Swift
func ABRemoveRecord(_addressBook: ABAddressBook!, _record: ABRecordRef) -> BoolObjective C
bool ABRemoveRecord ( ABAddressBookRef addressBook, ABRecordRef record );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordABRecord возражают, чтобы быть удаленными. Если
NULL, эта функция повышает исключение.Возвращаемое значение
trueесли запись была удалена успешно,falseиначе.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Сохраняет все изменения, внесенные начиная с последнего сохранения.
Объявление
Swift
func ABSave(_addressBook: ABAddressBook!) -> BoolObjective C
bool ABSave ( ABAddressBookRef addressBook );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
Возвращаемое значение
trueесли не было никаких изменений, если эта функция успешна илиfalseиначе.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Устанавливает рекорд, представляющий зарегистрированного пользователя.
Объявление
Swift
func ABSetMe(_addressBook: ABAddressBook!, _person: ABPerson!)Objective C
void ABSetMe ( ABAddressBookRef addressBook, ABPersonRef moi );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
personОбъект АБПЕРСОНА, представляющий зарегистрированного пользователя. Передача
NULLесли Вы не хотите, чтобы запись представляла зарегистрированного пользователя.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Возвращает тип данного свойства для данной записи.
Объявление
Swift
func ABTypeOfProperty(_addressBook: ABAddressBook!, _recordType: CFString!, _property: CFString!) -> ABPropertyTypeObjective C
ABPropertyType ABTypeOfProperty ( ABAddressBookRef addressBook, CFStringRef recordType, CFStringRef property );Параметры
addressBookАдресная книга для зарегистрированного пользователя.
recordTypeСодержащий тип записи
property:kABGroupRecordTypeилиkABPersonRecordType.propertyСвойство, тип которого Вы хотите получить.
Возвращаемое значение
Тип
propertyкак определено вProperty Types. Еслиpropertyне существует вrecordType, эта функция возвратыkABErrorInProperty.Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Ссылка на объект ABAddressBook.
Объявление
Swift
typealias ABAddressBookRef = ABAddressBookObjective C
typedef struct __ABAddressBookRef *ABAddressBookRef;Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
Это возможные типы свойств ABRecord.
Объявление
Swift
typealias ABPropertyType = CFIndexObjective C
typedef enum _ABPropertyType { kABErrorInProperty = 0x0, kABStringProperty = 0x1, kABIntegerProperty = 0x2, kABRealProperty = 0x3, kABDateProperty = 0x4, kABArrayProperty = 0x5, kABDictionaryProperty = 0x6, kABDataProperty = 0x7, kABMultiStringProperty = 0x100 | kABStringProperty, kABMultiIntegerProperty = 0x100 | kABIntegerProperty, kABMultiRealProperty = 0x100 | kABRealProperty, kABMultiDateProperty = 0x100 | kABDateProperty, kABMultiArrayProperty = 0x100 | kABArrayProperty, kABMultiDictionaryProperty = 0x100 | kABDictionaryProperty, kABMultiDataProperty = 0x100 | kABDataProperty } ABPropertyType;Константы
-
kABErrorInPropertykABErrorInPropertyВозвращенный некоторыми функциями, когда используется недопустимое свойство.
Доступный в OS X v10.2 и позже.
-
kABStringPropertykABStringPropertyУказывает объект CFString.
Доступный в OS X v10.2 и позже.
-
kABIntegerPropertykABIntegerPropertyУказывает объект CFNumber представление целого числа.
Доступный в OS X v10.2 и позже.
-
kABRealPropertykABRealPropertyУказывает объект CFNumber представление вещественного числа.
Доступный в OS X v10.2 и позже.
-
kABDatePropertykABDatePropertyУказывает объект CFDate.
Доступный в OS X v10.2 и позже.
-
kABArrayPropertykABArrayPropertyУказывает объект CFArray.
Доступный в OS X v10.2 и позже.
-
kABDictionaryPropertykABDictionaryPropertyУказывает объект CFDictionary.
Доступный в OS X v10.2 и позже.
-
kABDataPropertykABDataPropertyУказывает объект CFData.
Доступный в OS X v10.2 и позже.
-
kABMultiStringPropertykABMultiStringPropertyУказывает ABMultiValue, содержащий объекты NSString.
Доступный в OS X v10.2 и позже.
-
kABMultiIntegerPropertykABMultiIntegerPropertyУказывает ABMultiValue, содержащий объекты NSNumber, представляющие целые числа.
Доступный в OS X v10.2 и позже.
-
kABMultiRealPropertykABMultiRealPropertyУказывает ABMultiValue, содержащий объекты NSNumber, представляющие вещественные числа.
Доступный в OS X v10.2 и позже.
-
kABMultiDatePropertykABMultiDatePropertyУказывает ABMultiValue, содержащий объекты NSDate.
Доступный в OS X v10.2 и позже.
-
kABMultiArrayPropertykABMultiArrayPropertyУказывает ABMultiValue, содержащий объекты NSArray.
Доступный в OS X v10.2 и позже.
-
kABMultiDictionaryPropertykABMultiDictionaryPropertyУказывает ABMultiValue, содержащий объекты NSDictionary.
Доступный в OS X v10.2 и позже.
-
kABMultiDataPropertykABMultiDataPropertyУказывает ABMultiValue, содержащий объекты NSData.
Доступный в OS X v10.2 и позже.
Оператор импорта
Objective C
@import AddressBook;Swift
import AddressBookДоступность
Доступный в OS X v10.2 и позже.
-
-
Это уведомления, опубликованные, когда что-то изменяется в базе данных Address Book. Эти уведомления не отправляются до
ABGetSharedAddressBookбыл вызван.Объявление
Swift
let kABDatabaseChangedNotification: NSString! let kABDatabaseChangedExternallyNotification: NSString!Objective C
CFStringRef kABDatabaseChangedNotification; CFStringRef kABDatabaseChangedExternallyNotification;Константы
-
kABDatabaseChangedNotificationkABDatabaseChangedNotificationЭтот процесс изменил базу данных AddressBook.
Доступный в OS X v10.2 и позже.
-
kABDatabaseChangedExternallyNotificationkABDatabaseChangedExternallyNotificationДругой процесс изменил базу данных AddressBook. Следующие ключи включены в словарь пользовательской информации уведомления:
kABInsertedRecords,kABUpdatedRecords, иkABDeletedRecords. Если значения для всех ключейnil, все изменилось, такой как тогда, когда база данных Address Book восстанавливается из резервной копии.Доступный в OS X v10.2 и позже.
-
