Version: 2017.1
영수증 확인(Receipt validation)
Android 인앱 구매 스토어와 크로스 스토어 설치 문제(Cross-store installation issues with Android in-app purchase stores)

스토어 확장(Store Extensions)

스토어에서는 일반적인 크로스 플랫폼 구매 과정에 해당하지 않는 특수 기능을 제공합니다. 이러한 특수 기능은 Unity IAP가 성공적으로 초기화되면 애플리케이션에 제공되는 IExtensionProvider를 통해 액세스할 수 있습니다.

확장 기능을 사용하더라도 플랫폼 의존형 컴파일을 사용할 필요는 없습니다. 각 확장 기능은 해당 기능이 지원되지 않는 플랫폼에서 실행되는 경우 사용되는 거짓 무연산 과정을 포함하기 때문입니다.

예를 들어, 아래의 스니핏은 Apple 서버에서 새로 고쳐진 앱 영수증을 가져오기 위해 Apple이 사용하는 RefreshReceipt 메커니즘을 필요로 합니다. 이 스니핏은 모든 Unity IAP 플랫폼에서 컴파일할 수 있지만, Android와 같이 Apple이 아닌 플랫폼에서 실행하는 경우 아무 영향도 주지 않습니다. 제공된 람다가 호출되지 않기 때문입니다.

/// <summary>
/// Called when Unity IAP is ready to make purchases.
/// </summary>
public void OnInitialized (IStoreController controller, IExtensionProvider extensions)
{
    extensions.GetExtension<IAppleExtensions> ().RefreshAppReceipt (result => {
        if (result) {
            // Refresh finished successfully.
        } else {
            // Refresh failed.
        }
    });
}
영수증 확인(Receipt validation)
Android 인앱 구매 스토어와 크로스 스토어 설치 문제(Cross-store installation issues with Android in-app purchase stores)