PlayMaker
Read device contacts using Essential Kit’s AddressBook feature via PlayMaker custom actions.
Actions (6)
AddressBookGetContactsAccessStatus(sync): get current permission status (firesauthorizedEvent,deniedEvent,notDeterminedEvent,limitedEvent).AddressBookReadContacts(async): reads contacts usinglimit,offset, andmustInclude*filters; firessuccessEvent/failureEventand caches the result.AddressBookGetReadContactsSuccessResult(sync): reads cachedcontactCountandnextOffsetafter a successful read.AddressBookGetReadContactsError(sync): reads cachederrorCodeanderrorDescriptionafter a failed read.AddressBookGetContactInfo(sync): reads one contact bycontactIndexfrom the cached result (includesphoneNumbersandemailAddressesarrays).AddressBookLoadContactImage(async): loads a contact image bycontactIndex(firessuccessEvent/failureEvent).
Quick flow
(Optional)
AddressBookGetContactsAccessStatus→ route denied/restricted to your “permission help” UI.AddressBookReadContactssuccessEvent→AddressBookGetReadContactsSuccessResult→ loopcontactIndex = 0..contactCount-1withAddressBookGetContactInfo.failureEvent→AddressBookGetReadContactsError.
For phone/email arrays returned by
AddressBookGetContactInfo, use PlayMaker Array actions (get length, get element, etc.).
Pagination
Use limit + offset on AddressBookReadContacts. After each page, read nextOffset from AddressBookGetReadContactsSuccessResult. When nextOffset == -1, you’re done.
Use cases
Start here: use-cases/README.md
Platform notes
iOS: provide “Contacts Usage Description” in the Essential Kit settings / Info.plist.
Android: ensure contacts permission is declared and granted before reading contacts.
Last updated
Was this helpful?