- Zasób: SubscriptionPurchaseV2
- SubscriptionState
- PausedStateContext
- CanceledStateContext
- UserInitiatedCancellation
- CancelSurveyResult
- CancelSurveyReason
- SystemInitiatedCancellation
- DeveloperInitiatedCancellation
- ReplacementCancellation
- TestPurchase
- AcknowledgementState
- ExternalAccountIdentifiers
- SubscribeWithGoogleInfo
- SubscriptionPurchaseLineItem
- AutoRenewingPlan
- SubscriptionItemPriceChangeDetails
- PriceChangeMode
- PriceChangeState
- PrepaidPlan
- OfferDetails
- DeferredItemReplacement
- Metody
Zasób: SubscriptionPurchaseV2
Wskazuje stan zakupu subskrypcji przez użytkownika.
Zapis JSON |
---|
{ "kind": string, "regionCode": string, "lineItems": [ { object ( |
Pola | |
---|---|
kind |
Ten rodzaj reprezentuje obiekt SubscriptionPurchaseV2 w usłudze androidpublisher. |
regionCode |
Kod kraju lub regionu rozliczenia zgodnie ze standardem ISO 3166-1 alfa-2 w momencie przyznania subskrypcji. |
lineItems[] |
Informacje na poziomie produktu dotyczące zakupu subskrypcji. Wszystkie elementy w tym samym zakupie powinny być w całości z automatycznym odnawianiem lub wszystkie w ramach przedpłaconego abonamentu. |
startTime |
Godzina przyznania subskrypcji. Nie ustawiono dla oczekujących subskrypcji (subskrypcja została utworzona, ale oczekuje na płatność podczas rejestracji). Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
subscriptionState |
Obecny stan subskrypcji. |
latestOrderId |
Identyfikator ostatniego zamówienia powiązanego z zakupem subskrypcji. W przypadku subskrypcji odnawianej automatycznie jest to identyfikator zamówienia rejestracyjnego, jeśli nie zostało ono jeszcze odnowione, lub identyfikator ostatniego zamówienia cyklicznego (zamówienie zakończone powodzeniem, oczekujące lub odrzucone). W przypadku subskrypcji przedpłaconej jest to identyfikator zamówienia powiązany z tokenem zakupu, którego dotyczy zapytanie. |
linkedPurchaseToken |
Token zakupu starej subskrypcji, jeśli jest ona jedną z tych sytuacji: * Ponowna rejestracja anulowanej, ale jeszcze niewygasłej subskrypcji * przejście na wyższą lub niższą wersję usługi. * Zmień subskrypcję z przedpłaty na subskrypcję odnawianą automatycznie. * Zmień subskrypcję z automatycznie odnawianą na przedpłaconą. * Doładuj abonament przedpłacony. |
pausedStateContext |
Dodatkowy kontekst dotyczący wstrzymanych subskrypcji. Widoczny tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_PAUSE. |
canceledStateContext |
Dodatkowe informacje o anulowanych subskrypcjach. Obecna tylko wtedy, gdy subskrypcja ma obecnie stan subscriptionState SUBSCRIPTION_STATE_CANCELED. |
testPurchase |
Jest dostępny tylko wtedy, gdy zakup subskrypcji jest zakupem testowym. |
acknowledgementState |
Stan potwierdzenia subskrypcji. |
externalAccountIdentifiers |
Identyfikator konta użytkownika w usłudze zewnętrznej. |
subscribeWithGoogleInfo |
Profil użytkownika powiązany z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”. |
SubscriptionState
Potencjalne stany subskrypcji, np. czy jest aktywna lub anulowana. Zakupione treści mogą obejmować zarówno abonamenty odnawiane automatycznie, jak i abonamenty przedpłacone.
Wartości w polu enum | |
---|---|
SUBSCRIPTION_STATE_UNSPECIFIED |
Nieokreślony stan subskrypcji. |
SUBSCRIPTION_STATE_PENDING |
Subskrypcja została utworzona, ale oczekuje na płatność podczas rejestracji. W tym stanie wszystkie produkty oczekują na płatność. |
SUBSCRIPTION_STATE_ACTIVE |
Subskrypcja jest aktywna. – (1) Jeśli subskrypcja jest automatycznie odnawiana, co najmniej jeden element ma wartość autoRenewEnabled i nie wygasła. – (2) Jeśli subskrypcja jest abonamentem przedpłaconym, co najmniej 1 produkt nie stracił ważności. |
SUBSCRIPTION_STATE_PAUSED |
Subskrypcja została wstrzymana. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie elementy są wstrzymane. |
SUBSCRIPTION_STATE_IN_GRACE_PERIOD |
Subskrypcja jest w okresie prolongaty. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie produkty są w okresie prolongaty. |
SUBSCRIPTION_STATE_ON_HOLD |
Subskrypcja jest wstrzymana (zawieszona). Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. W tym stanie wszystkie elementy są wstrzymane. |
SUBSCRIPTION_STATE_CANCELED |
Subskrypcja została anulowana, ale jeszcze nie wygasła. Stan jest dostępny tylko wtedy, gdy subskrypcja jest automatycznie odnawiana. Wszystkie elementy mają wartość autoRenewEnabled ustawiona na false. |
SUBSCRIPTION_STATE_EXPIRED |
Subskrypcja wygasła. Wszystkie produkty mają wartość expiryTime w przeszłości. |
PausedStateContext
Informacje dotyczące wstrzymanej subskrypcji.
Zapis JSON |
---|
{ "autoResumeTime": string } |
Pola | |
---|---|
autoResumeTime |
Godzina, o której subskrypcja zostanie automatycznie wznowiona. Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
CanceledStateContext
Informacje o anulowanej subskrypcji.
Zapis JSON |
---|
{ // Union field |
Pola | |
---|---|
Pole sumy cancellation_reason . Powód anulowania subskrypcji. cancellation_reason może mieć tylko jedną z tych wartości: |
|
userInitiatedCancellation |
Subskrypcja została anulowana przez użytkownika. |
systemInitiatedCancellation |
Subskrypcja została anulowana przez system, np. z powodu problemu z płatnością. |
developerInitiatedCancellation |
Subskrypcja została anulowana przez dewelopera. |
replacementCancellation |
Subskrypcja została zastąpiona przez nową subskrypcję. |
UserInitiatedCancellation
Informacje dotyczące anulowania zainicjowanych przez użytkowników.
Zapis JSON |
---|
{
"cancelSurveyResult": {
object ( |
Pola | |
---|---|
cancelSurveyResult |
Informacje podane przez użytkownika podczas procesu anulowania subskrypcji (ankieta dotycząca przyczyny anulowania). |
cancelTime |
Godzina anulowania subskrypcji przez użytkownika. Po tym czasie użytkownik może nadal mieć dostęp do subskrypcji. Użyj parametru lineItems.expiry_time, aby określić, czy użytkownik nadal ma dostęp. Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
CancelSurveyResult
Wynik ankiety dotyczącej anulowania w przypadku anulowania subskrypcji przez użytkownika.
Zapis JSON |
---|
{
"reason": enum ( |
Pola | |
---|---|
reason |
Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania. |
reasonUserInput |
Stosowane tylko w przypadku: CANCEL_SURVEY_REASON_OTHERS. Jest to swobodna odpowiedź użytkownika na ankietę. |
CancelSurveyReason
Powód wybrania przez użytkownika w ankiecie dotyczącej anulowania.
Wartości w polu enum | |
---|---|
CANCEL_SURVEY_REASON_UNSPECIFIED |
Nieokreślony powód anulowania ankiety. |
CANCEL_SURVEY_REASON_NOT_ENOUGH_USAGE |
Niewystarczające wykorzystanie subskrypcji. |
CANCEL_SURVEY_REASON_TECHNICAL_ISSUES |
Problemy techniczne podczas korzystania z aplikacji. |
CANCEL_SURVEY_REASON_COST_RELATED |
Problemy związane z kosztami. |
CANCEL_SURVEY_REASON_FOUND_BETTER_APP |
użytkownik znalazł lepszą aplikację, |
CANCEL_SURVEY_REASON_OTHERS |
Inne powody. |
SystemInitiatedCancellation
Ten typ nie ma pól.
Informacje dotyczące anulowania zainicjowanych przez system Google.
DeveloperInitiatedCancellation
Ten typ nie ma pól.
Informacje dotyczące anulowania zainicjowanych przez deweloperów.
ReplacementCancellation
Ten typ nie ma pól.
Informacje o anulowaniach spowodowanych zastąpieniem subskrypcji.
TestPurchase
Ten typ nie ma pól.
Czy ten zakup subskrypcji jest zakupem testowym.
AcknowledgementState
Możliwe stany potwierdzenia subskrypcji.
Wartości w polu enum | |
---|---|
ACKNOWLEDGEMENT_STATE_UNSPECIFIED |
Nieokreślony stan potwierdzenia. |
ACKNOWLEDGEMENT_STATE_PENDING |
Subskrypcja nie została jeszcze potwierdzona. |
ACKNOWLEDGEMENT_STATE_ACKNOWLEDGED |
Subskrypcja została potwierdzona. |
ExternalAccountIdentifiers
Identyfikator konta użytkownika w usłudze zewnętrznej.
Zapis JSON |
---|
{ "externalAccountId": string, "obfuscatedExternalAccountId": string, "obfuscatedExternalProfileId": string } |
Pola | |
---|---|
externalAccountId |
Identyfikator konta użytkownika w usłudze zewnętrznej. Dostępne tylko wtedy, gdy łączenie kont miało miejsce w ramach procesu zakupu subskrypcji. |
obfuscatedExternalAccountId |
Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z kontem użytkownika w Twojej aplikacji. Występuje w przypadku tych zakupów: * Jeśli łączenie kont miało miejsce w ramach procesu zakupu subskrypcji. * Zostały one określone przy użyciu adresu https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedaccountid podczas zakupu. |
obfuscatedExternalProfileId |
Zaciemniona wersja identyfikatora, która jest jednoznacznie powiązana z profilem użytkownika w Twojej aplikacji. Widoczny tylko wtedy, gdy został określony za pomocą https://developer.android.com/reference/com/android/billingclient/api/BillingFlowParams.Builder#setobfuscatedprofileid podczas zakupu. |
SubscribeWithGoogleInfo
Informacje związane z zakupami dokonanymi za pomocą funkcji „Subskrybuj z Google”.
Zapis JSON |
---|
{ "profileId": string, "profileName": string, "emailAddress": string, "givenName": string, "familyName": string } |
Pola | |
---|---|
profileId |
Identyfikator profilu Google użytkownika w momencie zakupu subskrypcji. |
profileName |
Nazwa profilu użytkownika w momencie zakupu subskrypcji. |
emailAddress |
Adres e-mail użytkownika w momencie zakupu subskrypcji. |
givenName |
Nazwa użytkownika w momencie zakupu subskrypcji. |
familyName |
Nazwisko użytkownika w momencie zakupu subskrypcji. |
SubscriptionPurchaseLineItem
Informacje na poziomie produktu dotyczące zakupu subskrypcji.
Zapis JSON |
---|
{ "productId": string, "expiryTime": string, // Union field |
Pola | |
---|---|
productId |
Identyfikator zakupionego produktu (np. „monthly001”). |
expiryTime |
Czas, w którym subskrypcja wygasła lub wygaśnie, o ile dostęp nie zostanie przedłużony (np. zostanie odnowiona). Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
Pole sumy plan_type . Typ abonamentu. plan_type może mieć tylko jedną z tych wartości: |
|
autoRenewingPlan |
Produkt jest automatycznie odnawiany. |
prepaidPlan |
Produkt jest opłacany z góry. |
offerDetails |
Szczegóły oferty dotyczącej tego produktu. |
Pole sumy deferred_item_change . Pole jest obecne, gdy element ma odroczoną zmianę. Można go usunąć lub zastąpić. deferred_item_change może mieć tylko jedną z tych wartości: |
|
deferredItemReplacement |
Informacje na temat odroczonej wymiany produktu. |
AutoRenewingPlan
Informacje dotyczące abonamentu, który jest automatycznie odnawiany.
Zapis JSON |
---|
{
"autoRenewEnabled": boolean,
"priceChangeDetails": {
object ( |
Pola | |
---|---|
autoRenewEnabled |
Jeśli subskrypcja jest obecnie ustawiona na automatyczne odnawianie, np. użytkownik nie ją anulował |
priceChangeDetails |
Informacje o ostatniej zmianie ceny produktu od momentu zarejestrowania się w subskrypcji. |
SubscriptionItemPriceChangeDetails
Informacje związane ze zmianą ceny produktu objętego subskrypcją.
Zapis JSON |
---|
{ "newPrice": { object ( |
Pola | |
---|---|
newPrice |
Nowa cena cykliczna za element objęty subskrypcją. |
priceChangeMode |
Tryb zmiany ceny określa, jak zmienia się cena produktu objętego subskrypcją. |
priceChangeState |
Stan, w którym obowiązuje obecnie zmiana ceny. |
expectedNewPriceChargeTime |
Termin odnowienia, w którym zmiana ceny zacznie obowiązywać dla użytkownika. Ta data może ulec zmianie (w przyszłości) ze względu na sytuacje, w których czas odnowienia się przesunie (np. zostanie wstrzymany). Pole jest wypełniane tylko wtedy, gdy zmiana ceny nie została zastosowana. Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
PriceChangeMode
Tryb zmiany ceny.
Wartości w polu enum | |
---|---|
PRICE_CHANGE_MODE_UNSPECIFIED |
Nie określono trybu zmiany ceny. Tej wartości nie należy nigdy ustawiać. |
PRICE_DECREASE |
Jeśli cena subskrypcji spada. |
PRICE_INCREASE |
Jeśli cena subskrypcji wzrasta i użytkownik musi ją zaakceptować. |
OPT_OUT_PRICE_INCREASE |
Jeśli cena subskrypcji rośnie w trybie rezygnacji, |
PriceChangeState
Stan zmiany ceny.
Wartości w polu enum | |
---|---|
PRICE_CHANGE_STATE_UNSPECIFIED |
Nie określono stanu zmiany ceny. Nie należy używać tej wartości. |
OUTSTANDING |
Oczekiwanie na zgodę użytkownika na zmianę ceny. |
CONFIRMED |
Potwierdzono, że zmiana ceny wpłynie na użytkownika. |
APPLIED |
Zmiana ceny została zastosowana, czyli użytkownik zaczął płacić nową cenę. |
PrepaidPlan
Informacje dotyczące abonamentu przedpłaconego.
Zapis JSON |
---|
{ "allowExtendAfterTime": string } |
Pola | |
---|---|
allowExtendAfterTime |
Jeśli ta opcja jest dostępna, jest to czas, po którym będzie można kupować doładowania w przypadku abonamentu przedpłaconego. Nie jest dostępny w przypadku wygasłych abonamentów przedpłaconych. Sygnatura czasowa w formacie RFC3339 UTC „Zulu”, z rozdzielczością nanosekundy i maksymalnie 9 cyframi po przecinku. Przykłady: |
OfferDetails
Informacje o ofercie powiązanej z elementem zamówienia.
Zapis JSON |
---|
{ "offerTags": [ string ], "basePlanId": string, "offerId": string } |
Pola | |
---|---|
offerTags[] |
Najnowsze tagi oferty powiązane z ofertą. Obejmuje tagi odziedziczone z abonamentu podstawowego. |
basePlanId |
Identyfikator abonamentu podstawowego. Widoczne w przypadku wszystkich abonamentów podstawowych i ofert. |
offerId |
Identyfikator oferty. Dostępne tylko w przypadku ofert z rabatem. |
DeferredItemReplacement
Informacje dotyczące odroczonej wymiany produktu.
Zapis JSON |
---|
{ "productId": string } |
Pola | |
---|---|
productId |
Identyfikator productId zastąpi dotychczasowy identyfikator produktu. |
Metody |
|
---|---|
|
Pobieranie metadanych subskrypcji |
|
Cofnąć zakup subskrypcji użytkownika. |