자동화 용 JavaScript에서 ObjC 브릿지 연락처 프레임 워크를 어떻게 사용합니까? 이전 주소록 프레임 워크를 사용할 수 있지만 연락처는 사용할 수 없습니다. 이전 주소록 프레임 워크가 잘 작동objC bridge 사용 자동화 용 JavaScript의 연락처 프레임 워크
id = Application("Contacts").myCard().id()
:
ObjC.import("AddressBook");
book = $.ABAddressBook.addressBook
person = book.recordForUniqueId(id)
console.log(person.valueForProperty($.kABFirstNameProperty).js)
하지만 어떻게이 연락처 프레임 워크를 사용하는
이의 내가 ID를 가지고 있다고 가정 해 봅시다? 나는 (unifiedContactWithIdentifier
에 대한 문서 기준) 시도 : 스크립트 오류 :이 오류 -2700 함께 실패
ObjC.import('Contacts')
keysToFetch = [ $.CNContactGivenNameKey, $.CNContactFamilyNameKey ]
store = $.CNContactStore
store.unifiedContactWithIdentifierKeysToFetchError(id, keysToFetch, null)
...
. 더욱 기본적인 예는 defaultContainerIdentifier
방법은 undefined
출력을 제공 : 팝업은 TypeError: store.unifiedContactWithIdentifierKeysToFetchError is not a function
편집 말한다 당신은 클래스 메소드 +addressBook
를 사용하여 클래스의 인스턴스를 얻을 첫 번째 경우에
ObjC.import('Contacts')
store = $.CNContactStore
console.log(store)
/* [Class CNContactStore] */
console.log(store.defaultContainerIdentifier)
/* undefined */
! 감사. – wivku