Xamarin에서 watchOS의 Apple PayApple Pay on watchOS in Xamarin

Apple은 watchOS 3의 Apple Pay에 대 한 몇 가지 향상 된 기능을 제공 하 여 앱 내 지불액에 대 한 지원을 추가 합니다.Apple has made several enhancements to Apple Pay in watchOS 3 that adds support for In-App Payments. 이를 통해 사용자는 지불 및 연락처 정보를 안전 하 게 제공 하 여 Apple Watch에서 직접 물리적 상품 및 서비스에 대 한 비용을 지불할 수 있습니다.This allows the user to securely provide payment and contact information to pay for physical goods and services directly from the Apple Watch.

Apple Pay 향상 정보About Apple Pay Enhancements

위에서 설명한 것 처럼 Apple은 watchOS 3의 Apple Pay에 대 한 몇 가지 향상 된 기능을 사용 하 여 Apple Watch에서 직접 물리적 상품 및 서비스에 대 한 요금을 지불 하는 보안 지불 및 연락처 정보가 있습니다.As Stated above, Apple has made several enhancements to Apple Pay in watchOS 3 that allow for secure payment and contact information to pay for physical goods and services directly from the Apple Watch. 이러한 향상 된 기능은 PassKit 프레임 워크를 수정 하 여 제공 됩니다.These enhancements are provided by modifications to the PassKit framework.

IOS 10 및 watchOS 3을 사용 하는 경우 iOS와 watchOS 모두에서 작동 하 여 동적 지불 네트워크와 새 샌드박스 테스트 환경을 지 원하는 몇 가지 새로운 Api가 추가 되었습니다.With iOS 10 and watchOS 3, several new APIs have been added that work with both iOS and watchOS to support dynamic payment networks and a new sandbox test environment.

PassKit Framework의 향상 된 기능PassKit Framework Enhancements

IOS 10에서 PassKit 프레임 워크는 UIKit 외부의 Apple Pay을 지원 하도록 확장 되었으며 카드 발급자가 자신의 앱 내에서 카드를 제공할 수 있도록 합니다.In iOS 10, the PassKit framework has been expanded to support Apple Pay outside of UIKit and to allow card issuers to present their cards from within their apps.

UIKit 외부에서 Apple Pay 지원Supporting Apple Pay Outside of UIKit

앱은 PKPaymentAuthorizationControllerPKPaymentAuthorixationControllerDelegate를 사용 하 여 uikit를 사용 하지 않고 PKPaymentAuthorizationViewController 에서 제공 하는 것과 동일한 기능을 지원할 수 있습니다.By using PKPaymentAuthorizationController and PKPaymentAuthorixationControllerDelegate, an app can support the same functionality provided by PKPaymentAuthorizationViewController without using UIKit. 이 새로운 API는 Apple Watch에서 Apple Pay을 지원 하기 위해 필요 하지만 (특정 의도에도 해당) 다른 상황 (예: 기존 앱)에서는 선택 사항입니다.While this new API is required for supporting Apple Pay on the Apple Watch (and in specific Intents as well), it is optional in other situations (such as existing apps). 그러나 Apple은 가능한 한 빨리 새 API로 전환 하 여 단일 코드 베이스를 사용 하 여 모든 개발자 앱 전체에 걸쳐 광범위 한 Apple Pay 지원을 제공할 것을 제안 합니다.However, Apple suggests moving to the new API as soon as possible to provide broad Apple Pay support throughout all of the developer's apps with a single code base. 의도 및 Siri 통합에 대 한 자세한 내용은 SiriKit 소개 설명서를 참조 하세요.For more information about Intents and Siri integration, please see our Introduction to SiriKit documentation.

앱 내에서 발급자 카드 제공Presenting Issuer Cards from within Apps

IOS 10 및 watchOS 3을 사용 하는 경우 카드 발급자가 자신의 앱 내에서 지불 카드를 제공할 수 있도록 하는 새로운 기능이 PassKit 프레임 워크에 추가 되었습니다.With iOS 10 and watchOS 3, new features have been added to the PassKit framework that allow card issuers to present their payment cards from within their own apps. 개발자는 카드에 대 한 Apple Pay 단추를 표시 하는 앱의 사용자 인터페이스에 PKPaymentButtonTypeInStore UIButton를 추가할 수 있습니다.The developer can add a PKPaymentButtonTypeInStore UIButton to the app's user interface that will display an Apple Pay button for a card.

PKPassLibrary 클래스의 PresentPaymentPass 메서드를 사용 하 여 프로그래밍 방식으로 카드를 표시할 수도 있습니다.The PresentPaymentPass method of the PKPassLibrary class can also be used to programmatically display the card.

새 결제 네트워크 지원New Payment Network Support

IOS 10 및 watchOS 3의 새로운 기능으로, 앱은 개발자가 수정 하지 않고도 사용할 수 있게 되 면 새 결제 네트워크를 자동으로 지원할 수 있습니다. 앱을 다시 컴파일하고 앱 스토어에 다시 전송 해야 합니다.New to iOS 10 and watchOS 3, an app can automatically support a new payment network when it becomes available without the developer having to modify, recompile the app and resubmit it to the App Store.

PKPaymentNetwork 클래스의 새 AvailableNetworks 메서드를 사용 하면 앱이 런타임에 사용자 장치에서 사용할 수 있는 네트워크를 검색할 수 있습니다.The new AvailableNetworks method of the PKPaymentNetwork class allows an app to discover the networks available on the user's device at runtime. 또한 Supportednetworks 속성은 지불 공급자의 이름을 인수로 사용 하도록 확장 되었습니다.Additionally, the SupportedNetworks property has been expanded to take the payment provider's name as an argument. 이러한 방법을 사용 하 여 앱은 지불 공급자가 지 원하는 모든 네트워크를 자동으로 지원할 수 있습니다.Using these methods, an app can automatically support any network that the payment provider supports.

자세한 내용은 Apple Pay 구성 및 Apple Apple Pay 가이드를 참조 하세요.For more information, please see our Apple Pay Configuration and Apple's Apple Pay Guide.

새 테스트 환경New Testing Environment

IOS 10 및 watchOS 3을 사용 하 여 Apple은 개발자가 iOS 장치에서 직접 테스트 지불 카드를 프로 비전 할 수 있는 새로운 테스트 환경을 도입 했습니다.With iOS 10 and watchOS 3, Apple introduced a new testing environment that allows the developer to provision test payment cards directly on an iOS device. 그러면이 새 테스트 환경이 암호화 된 테스트 지불 데이터를 앱에 반환 합니다.This new testing environment then returns encrypted test payment data to the app.

새 테스트 환경을 사용 하도록 설정 하려면 다음을 수행 합니다.To enable the new testing environment, do the following:

  1. ITunes Connect에서 새 테스트 iCloud 계정을 만듭니다.Create a new testing iCloud Account in iTunes Connect.
  2. 새 테스트 계정을 사용 하 여 iOS 장치에 로그인 합니다.Log into the iOS device with the new testing account.
  3. 에서 앱을 테스트 하는 데 필요한 영역을 설정 합니다.Set the desired region to test the app in.
  4. Apple Pay 가이드 에서 테스트 지불 카드 중 하나를 사용 하 여 지불액을 만듭니다.Use one of the test payment cards from the Apple Pay Guide to make payments.

참고

ICloud 계정을 전환 하면 장치가 새 테스트 환경으로 자동 전환 됩니다.By switching iCloud Accounts, the device will automatically switch to the new testing environment. 그러나 Apple에서는 iTunes 앱 스토어에 제출 하기 전에 프로덕션 환경에서 실제 카드로 앱을 테스트 해야 합니다 .However, Apple still requires the app to be tested with real cards in a production environment before submission to the iTunes App Store.

요약Summary

이 문서에서는 watchOS 3의 Apple Pay에 대 한 Apple의 향상 된 기능에 대해 설명 하 고 Xamarin.ios에서 이러한 기능을 구현 하는 방법을 설명 했습니다.This article has covered the enhancements Apple has made to Apple Pay in watchOS 3 and how to implement them in Xamarin.iOS.