2016-03-18 30 views
2

電子メールのIDと電話番号が抽出されません。私が使用しようとしているサンプルコードは以下の通りです。誰でも私にここで問題を知らせることができますか?Apple Pay - Objective Cで電子メールと電話番号を抽出できます

ApplePayAddress *apAddress = [[ApplePayAddress alloc] init]; 
    apAddress.firstName = (__bridge NSString *)(ABRecordCopyValue(address, kABPersonFirstNameProperty)); 
    apAddress.lastName = (__bridge NSString *)(ABRecordCopyValue(address, kABPersonLastNameProperty)); 

    ABMultiValueRef addressMultiValue = ABRecordCopyValue(address, kABPersonAddressProperty); 
    NSDictionary *addressDictionary = (__bridge_transfer NSDictionary *) ABMultiValueCopyValueAtIndex(addressMultiValue, 0); 
    NSLog(@"AddressDictionary:%@",addressDictionary); 

apAddress.emailId = [addressDictionary objectForKey:(NSString *)kABPersonEmailProperty]; 
    apAddress.phNumber = [addressDictionary objectForKey:(NSString *)CNContactPhoneNumbersKey]; 
    apAddress.street = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressStreetKey]; 
    apAddress.city = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressCityKey]; 
    apAddress.state = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressStateKey]; 
    apAddress.zip = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressZIPKey]; 
    apAddress.country = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressCountryKey]; 
    apAddress.countryCode = [addressDictionary objectForKey:(__bridge NSString *)kABPersonAddressCountryCodeKey]; 

答えて

0

あなたは以下のコードを使用して、電話番号や電子メールを抽出することができます。didAuthorizePaymentのデリゲートメソッドで

ABMultiValueRef addressMultiValue1 = ABRecordCopyValue(payment.shippingAddress, kABPersonEmailProperty); 
apAddress.emailId = (__bridge NSString *)ABMultiValueCopyValueAtIndex (addressMultiValue1, 0); 

ABMultiValueRef addressMultiValue2 = ABRecordCopyValue(payment.shippingAddress, kABPersonPhoneProperty); 
apAddress.phoneNumber = (__bridge NSString *)ABMultiValueCopyValueAtIndex (addressMultiValue2, 0); 
をこのコードを書きます