기술 자료

SubscriptionInfo 클래스 레퍼런스

`SubscriptionInfo` 클래스 메서드를 참조하여 구독 상품 정보와 상태를 가져옵니다.
읽는 시간 3분최근 업데이트: 3달 전

Unity IAP는
SubscriptionInfo
클래스를 통해 자세한 구독 제품 정보를 제공합니다.

SubscriptionInfo 클래스 메서드

SubscriptionInfo
클래스는 제품의 구독 관련 정보를 위한 컨테이너입니다.
참고
메서드
IsSubscribed()
,
IsExpired()
,
IsCancelled()
,
IsAutoRenewing()
및
GetRemainingTime()
는 현재 날짜를 사용하여 호출 시간에 계산됩니다. 즉,
SubscriptionInfo
객체를 캐시하면 시간 경과에 따라 이러한 값이 동적으로 업데이트됩니다.
SubscriptionInfo
클래스에서 사용할 수 있는 메서드는 다음과 같습니다.

메서드

설명

public string GetProductId()
제품의 스토어 ID를 반환합니다.
public DateTime GetPurchaseDate()
상품의 구매일을 반환합니다.
Apple의 경우 구매 날짜는 구독이 구매되거나 갱신된 날짜입니다. Google의 경우 구매 날짜는 구독이 원래 구매된 날짜입니다.
public Result IsSubscribed()
제품이 현재 구독되었는지 여부를 나타냅니다.
Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다. Apple 앱 스토어의 자동 갱신형 제품과 Google Play 스토어의 구독 제품은
Result.True
또는
Result.False
값을 반환합니다.
public Result IsExpired()
구독이 만료되었는지 표시합니다.
* Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다.
* Apple 앱 스토어의 자동 갱신형 제품과 Google Play 스토어의 구독 제품은
Result.True
또는
Result.False
값을 반환합니다.
public Result IsCancelled()
구독이 취소되었는지 표시합니다.
구독이 취소되면 제품이 현재 구독되었지만 다음 청구일에 갱신되지 않습니다.
Apple의 경우 이 값은 취소 날짜에 따라 결정됩니다.
Google의 경우 자동 갱신 상태에 따라 결정됩니다.
Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다.
public Result IsFreeTrial()
상품이 무료 평가판 중인지 여부를 나타냅니다.
Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다. Apple 앱 스토어의 자동 갱신형 제품과 Google Play 스토어의 구독 제품은
Result.True
또는
Result.False
값을 반환합니다.
public Result IsAutoRenewing()
구독이 자동 갱신 가능 여부를 나타냅니다.
Apple의 경우 제품 유형, 취소 상태, 만료 상태를 기준으로 계산됩니다.
Google의 경우 저장된 자동 갱신 플래그를 반환합니다.
Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다.
public TimeSpan GetRemainingTime()
다음 청구일까지 남은 시간을 나타내는 TimeSpan을 반환합니다.
Apple 앱 스토어 반품
TimeSpan.Zero
의 재생 불가 제품.
public Result IsIntroductoryPricePeriod()
구독이 초기 단가 기간에 있는지 표시합니다.
Apple 앱 스토어에서 재생되지 않는 제품은
Result.Unsupported
값을 반환합니다.
Apple 앱 스토어의 자동 갱신형 제품과 Google Play 스토어의 구독 제품은
Result.True
또는
Result.False
값을 반환합니다.
public TimeSpan GetIntroductoryPricePeriod()
초기 가격 기간에 남은 시간을 나타내는
TimeSpan
를 반환합니다.
초기 가격 기간 반환
TimeSpan.Zero
없이 구독 제품. 애플리케이션이 iOS 버전 11.2 이상, macOS 10.13.2 이상 또는 tvOS 11.2 이상을 지원하지 않는 경우 Apple 앱 스토어의 제품이
TimeSpan.Zero
를 반환합니다.
public long GetIntroductoryPricePeriodCycles()
초기 단가 주기의 수를 반환합니다.
애플리케이션이 iOS 버전 11.2 이상, macOS 10.13.2 이상 또는 tvOS 11.2 이상을 지원하지 않는 경우 Apple 앱 스토어 제품은 0을 반환합니다.
public string GetIntroductoryPrice()
소개 단가 문자열을 반환합니다.
초기 가격이 없는 제품은
"not available"
값을 반환합니다. 시작 가격이 지정된 Apple 앱 스토어 제품은
“0.99USD”
형식의 값을 반환합니다. 초기 가격이 지정된 Google Play 제품은
“$0.99”
형식의 값을 반환합니다. 애플리케이션이 iOS 버전 11.2 이상, macOS 10.13.2 이상 또는 tvOS 11.2 이상을 지원하지 않는 경우 Apple 앱 스토어의 제품이
“not available”
를 반환합니다.
public DateTime GetExpireDate()
제품의 다음 자동 갱신 또는 만료일을 반환합니다(자동 갱신 구독 취소 시).
public DateTime GetCancelDate()
구독이 취소된 날짜를 반환합니다.
Apple App Store 영수증에서 취소 날짜를 반환합니다.
Google Play 스토어 지원 안 함 -
DateTime.MinValue
를 반환합니다. Google Play에서 IsCancelled()를 사용하여 취소 상태를 확인합니다.
public TimeSpan GetFreeTrialPeriod()
무료 평가판 기간을 반환합니다.
Google Play 스토어 제품 세부 정보에서 설정된 무료 평가판 기간을 반환합니다.
Apple App Store 지원 안 함 -
TimeSpan.Zero
를 반환합니다. 무료 평가판 상태는
IsFreeTrial()
로 확인할 수 있습니다.
public TimeSpan GetSubscriptionPeriod()
구독 과금 기간을 반환합니다.
Google Play 스토어 제품 세부 정보에서 구독 기간을 반환합니다.
Apple App Store 지원 안 함 -
TimeSpan.Zero
를 반환합니다.
public string GetFreeTrialPeriodString()
무료 평가판을 ISO8601 지속 시간 문자열로 반환합니다(예: 1주간의 "P1W").
하지만 이 메서드는 Google Play 스토어에 유용한 데이터만 반환합니다.
Apple 앱 스토어의 경우 이 값은
null
를 반환합니다.
public string GetSkuDetails()
Google Play API 원시 JSON SkuDetails를 반환합니다.
Apple 앱 스토어의 경우 이 값은
null
를 반환합니다.
public string GetSubscriptionInfoJsonString()
productId
,
is_free_trial
,
is_introductory_price_period
및
remaining_time_in_seconds
를 포함한 구독 데이터가 포함된 JSON 문자열을 반환합니다.
Google Play 스토어 구독 업데이트에 내부적으로 사용됩니다.