2

创建我的时PKPaymentRequest,我指定了一些必填字段,如下所示:

request.requiredBillingAddressFields = PKAddressFieldPostalAddress|PKAddressFieldEmail|PKAddressFieldName;
request.requiredShippingAddressFields = PKAddressFieldEmail|PKAddressFieldName;

注意:我只需要账单电子邮件和姓名,但如果我没有指定PKAddressFieldEmail|PKAddressFieldNameonrequiredShippingAddressFields以及 ApplePay UI 不会要求这个。

然后我尝试像这样提取名称。它是否到达送货地址或帐单地址并不总是很清楚,因此我会检查两者。

NSString *name = (__bridge_transfer NSString *) ABRecordCopyCompositeName(payment.shippingAddress);
if (!name) {
    name = (__bridge_transfer NSString *) ABRecordCopyCompositeName(payment.billingAddress);
}

但有时这个名字并没有出现。它是断断续续的,有时它会出现,有时它不会在没有改变任何东西的情况下出现。这让我怀疑这是 iOS 8.4 中的错误,但我绝对不排除这是我的错。(通常是。)

有没有其他人遇到过这个?有解决方法吗?

4

0 回答 0