10

iOS アプリで Apple Pay を設定しようとしているときに、API と事前入力情報の問題に遭遇しました。私たちのユーザー フローでは、ユーザーは Apple Pay で支払う前に住所、メール、電話番号を手動で設定できます。そのため、ユーザーがそうすることに決めた場合は、Apple Pay プロンプトに入力を確実に入力する必要があります。

開発ガイドによると、これは request.shippingContact でこれらの値を設定するのと同じくらい簡単なはずです。ただし、これを行うと、値は無視されます。

ドキュメントが私たちに伝えていないことはありますか?

PKContact *contact = [[PKContact alloc] init];  
contact.emailAddress = @"john@appleseed.com";
contact.phoneNumber = [[CNPhoneNumber alloc] initWithStringValue:@"5555555"];

NSPersonNameComponents *name = [[NSPersonNameComponents alloc] init];
name.givenName = @"John";
name.familyName = @"Appleseed";
contact.name = name;

request.billingContact = contact;
request.shippingContact = contact;
request.requiredBillingAddressFields = PKAddressFieldAll;
request.requiredShippingAddressFields = PKAddressFieldEmail | PKAddressFieldPhone;

Apple Pay サンプル

4

1 に答える 1

3

ドキュメントに記載されているように、アドレス値を適切に検証する必要があります。有効な住所と有効な郵便番号を渡す必要があります。以下のコードを参照してください。

PKContact *contact = [[PKContact alloc] init];

NSPersonNameComponents *name = [[NSPersonNameComponents alloc] init];
name.givenName = @"John";
name.familyName = @"Appleseed";

contact.name = name;

CNMutablePostalAddress *address = [[CNMutablePostalAddress alloc] init];
address.street = @"1234 Laurel Street";
address.city = @"Atlanta";
address.state = @"GA";
address.postalCode = @"30303";

また、チェックしてください:


ノート

アドレス情報は、iOS のさまざまなソースから取得できます。使用する前に、必ず情報を検証してください。

于 2016-08-29T04:26:43.280 に答える