【发布时间】:2016-04-04 17:42:00
【问题描述】:
基于苹果文档:PKPaymentRequest_Ref
每个 PKPaymentRequest 都有一个 requiredShippingAddressFields 和 shippingContact。我有一个预先填写的送货地址。这是用户在选择 Apple Pay 结帐之前插入的地址,但我想让用户根据需要选择任何其他地址。
这就是我提出要求的方式:
- (PKPaymentRequest *)paymentRequest {
PKPaymentRequest *paymentRequest = [[PKPaymentRequest alloc] init];
paymentRequest.merchantIdentifier = @"merchant.com.myCompany.sandbox";
paymentRequest.requiredShippingAddressFields = (PKAddressFieldPostalAddress|PKAddressFieldPhone|PKAddressFieldName);
paymentRequest.requiredBillingAddressFields = (PKAddressFieldPostalAddress|PKAddressFieldPhone|PKAddressFieldName);
paymentRequest.supportedNetworks = @[PKPaymentNetworkAmex, PKPaymentNetworkVisa, PKPaymentNetworkMasterCard];
paymentRequest.billingContact = [self contactForAddress:self.info.billingAddress];
paymentRequest.shippingContact = [self contactForAddress:self.info.shippingAddress];
paymentRequest.merchantCapabilities = PKMerchantCapability3DS;
paymentRequest.countryCode = [self.info.country uppercaseString];
paymentRequest.currencyCode = [self.info.currency uppercaseString];
paymentRequest.paymentSummaryItems = [self summaryItems];
paymentRequest.shippingMethods = [self shippingMethod];
return paymentRequest;
}
但是当苹果支付窗口出现时,它不显示预设的运输联系方式(我设置为 paymentRequest.shippingContact )。但在文件中它说
此送货地址出现在付款表中。当。。。的时候 PKPaymentAuthorizationViewController 类呈现,用户可以 保留您指定的地址或输入其他地址。
我的代码有什么问题吗?
【问题讨论】:
-
你是iOS8还是9?
-
我在 iOS 9 上进行测试。
标签: ios objective-c applepay