PKContact и почтовый индекс для стран, не входящих в США

Я внедряю плату Apple для Канады, чтобы узнать местоположение пользователя, у меня должен быть его / ее почтовый индекс, чтобы оценить стоимость доставки. Я ввод

H4A2R4

как мой почтовый индекс в качестве адреса доставки для ApplePay. когда я пытаюсь получить информацию от PKContact, он просто возвращает меня

Н4А

, как я могу получить это полностью? мой пример кода:

- (NSString *)postCodeForContact:(PKContact *)contact {
  return contact.postalAdress.postalCode;
}

Я также попробовал ABPersonRef, и я получил тот же результат.

2 ответа

Али ответ правильный. У вас есть вся необходимая информация в

- (void)paymentAuthorizationViewController:(PKPaymentAuthorizationViewController *)controller
                   didAuthorizePayment:(PKPayment *)payment
                            completion:(void (^)(PKPaymentAuthorizationStatus status))completion;

Просто получить к нему доступ через payment.shippingContact.postalAdress.postalCode и если вы хотите, чтобы пользователь знал, что его адрес доставки неверен, то позвоните completion(PKPaymentAuthorizationStatusInvalidShippingPostalAddress) в том же методе.

Я обнаружил, что это изменение было сделано Apple. полный почтовый индекс вы получаете только тогда, когда пользователи применяют свои отпечатки пальцев.

https://forums.developer.apple.com/thread/15217

Другие вопросы по тегам