ApplePay を使用しており、連絡先情報として電子メールが必要です。メールを受信しようとすると、メールの結果が「配送中」で、どこから来たのかさえわかりません。
リクエストに必須の電子メール フィールドがあり、電子メール情報を入力しました。
request.requiredShippingAddressFields = PKAddressField.PostalAddress | PKAddressField.Email
コードは次のとおりです。
func paymentAuthorizationViewController(controller: PKPaymentAuthorizationViewController!, didAuthorizePayment payment: PKPayment!, completion: ((PKPaymentAuthorizationStatus) -> Void)!) {
let address: ABRecord! = payment.shippingAddress
let emails: ABMultiValueRef = ABRecordCopyValue(address, kABPersonEmailProperty).takeRetainedValue() as ABMultiValueRef
if ABMultiValueGetCount(emails) > 0 {
let email = ABMultiValueCopyLabelAtIndex(emails, 0).takeRetainedValue()
NSLog(email) //Here prints "Shipping"
}
...
}
これは、電子メールを取得する適切な場所ですか? そうでない場合、正しいアプローチは何ですか?
電話番号 (kABPersonPhoneProperty) を取得しようとすると、結果も "Shipping" として出力されます。