W tym artykule znajdziesz listę czynności konfiguracyjnych, które musisz wykonać, zanim zaczniesz sprzedawać produkty w aplikacji. Ogólnie rzecz biorąc, konfiguracja obejmuje utworzenie konta dewelopera, utworzenie i skonfigurowanie produktów, które chcesz sprzedawać, oraz włączenie i skonfigurowanie interfejsów API, których używasz do sprzedaży i zarządzania produktami. W tym artykule opisujemy też, jak skonfigurować powiadomienia w czasie rzeczywistym dla deweloperów, aby otrzymywać powiadomienia o każdej zmianie stanu produktu.
Konfigurowanie konta dewelopera w Google Play
Aby publikować aplikacje i gry w Google Play, użyj Konsoli Google Play. W Konsoli Google Play możesz też zarządzać produktami i ustawieniami związanymi z płatnościami.
Aby uzyskać dostęp do Konsoli Google Play, musisz skonfigurować konto dewelopera w Google Play.
Aby sprzedawać w Google Play płatne aplikacje i produkty w aplikacji, musisz też skonfigurować profil w Centrum płatności Google, a następnie połączyć go z kontem dewelopera w Google Play. Aby dowiedzieć się, jak połączyć profil z kontem lub jak sprawdzić, czy masz już połączone konto i profil, przeczytaj artykuł Łączenie konta dewelopera w Google Play z profilem płatności.
Włączanie funkcji związanych z płatnościami w Konsoli Google Play
Po skonfigurowaniu konta dewelopera musisz opublikować wersję aplikacji, która zawiera Bibliotekę płatności w Google Play. Ten krok jest wymagany, aby włączyć w Konsoli Google Play funkcje związane z płatnościami, takie jak konfigurowanie produktów, które chcesz sprzedawać.
Dodawanie zależności biblioteki
Aby zintegrować system rozliczeniowy Google Play, najpierw dodaj w aplikacji zależność od Biblioteki płatności w Google Play. Ta biblioteka zapewnia dostęp do interfejsów API Androida, które łączą Cię z Google Play. Dzięki temu możesz uzyskiwać informacje o zakupach, wysyłać zapytania o aktualizacje dotyczące zakupów, prosić użytkownika o dokonanie nowych zakupów i wykonywać inne czynności.
Biblioteka płatności w Google Play jest dostępna w repozytorium Maven Google. Dodaj zależność do pliku build.gradle aplikacji w sposób pokazany poniżej:
Dynamiczny
dependencies { def billing_version = "9.1.0" implementation "com.android.billingclient:billing:$billing_version" }
Kotlin
dependencies { val billing_version = "9.1.0" implementation("com.android.billingclient:billing:$billing_version") }
Jeśli używasz języka Kotlin, moduł KTX Biblioteki płatności w Play zawiera rozszerzenia Kotlin i obsługę współprogramów, które umożliwiają pisanie idiomatycznego kodu Kotlin podczas korzystania z systemu rozliczeniowego Google Play. Aby uwzględnić te rozszerzenia w projekcie, dodaj do pliku build.gradle aplikacji zależność w sposób pokazany poniżej:
Dynamiczny
dependencies { def billing_version = "9.1.0" implementation "com.android.billingclient:billing-ktx:$billing_version" }
Kotlin
dependencies { val billing_version = "9.1.0" implementation("com.android.billingclient:billing-ktx:$billing_version") }
Przykłady kodu w języku Kotlin na tej stronie korzystają z KTX, jeśli jest to możliwe.
Przesyłanie aplikacji
Po dodaniu biblioteki do aplikacji skompiluj i opublikuj swoją aplikację. W tym celu utwórz aplikację i opublikuj ją na dowolnej ścieżce, w tym na ścieżce testu wewnętrznego.
Tworzenie i konfigurowanie produktów
Po włączeniu w aplikacji funkcji płatności w Google Play musisz skonfigurować produkty na sprzedaż.
Procedura tworzenia produktów kupowanych raz i subskrypcji jest podobna. W przypadku każdego produktu musisz podać unikalny identyfikator produktu, tytuł, opis i informacje o cenie. Subskrypcje wymagają dodatkowych informacji, takich jak wybranie typu odnowienia abonamentu podstawowego (odnawianie automatyczne lub przedpłata).
Konsola Google Play udostępnia interfejs internetowy, za pomocą którego możesz zarządzać swoimi produktami.
Aby utworzyć i skonfigurować produkty kupowane raz, przeczytaj artykuł Tworzenie produktu zarządzanego. Pamiętaj, że w Konsoli Google Play produkty kupowane raz są nazywane produktami zarządzanymi.
Aby utworzyć i skonfigurować subskrypcje, przeczytaj artykuł Tworzenie subskrypcji.
Alternatywnie do interfejsu internetowego możesz też zarządzać produktami za pomocą zasobu REST
inappproducts
w przypadku produktów w aplikacji oraz zasobu REST monetization.subscriptions w przypadku subskrypcji
w interfejsie Google Play Developer API.
Konfigurowanie interfejsu Google Play Developer API
Interfejs Google Play Developer API to interfejs API typu serwer-serwer, który uzupełnia Bibliotekę płatności w Google Play na Androidzie. Ten interfejs API udostępnia funkcje niedostępne w Bibliotece płatności w Google Play, takie jak bezpieczne weryfikowanie zakupów i zwracanie użytkownikom pieniędzy.
W ramach integracji systemu rozliczeniowego Google Play z aplikacją musisz skonfigurować dostęp do interfejsu Google Play Developer API w Konsoli Google Play. Instrukcje znajdziesz w artykule Pierwsze kroki z interfejsem Google Play Developer API.
Po skonfigurowaniu dostępu do interfejsu Google Play Developer API upewnij się, że masz przyznane uprawnienie Wyświetlanie danych finansowych, które jest potrzebne do korzystania z funkcji związanych z płatnościami. Informacje o sprawdzonych metodach, a także o konfigurowaniu uprawnień, znajdziesz w artykule Dodawanie użytkowników konta dewelopera i zarządzanie uprawnieniami.
Konfigurowanie powiadomień w czasie rzeczywistym dla deweloperów
Powiadomienia w czasie rzeczywistym dla deweloperów to mechanizm otrzymywania powiadomień od Google o każdej zmianie uprawnień użytkownika w aplikacji. Powiadomienia w czasie rzeczywistym dla deweloperów korzystają z usługi Google Cloud Pub/Sub, która umożliwia otrzymywanie danych wysyłanych do ustawionego przez Ciebie adresu URL lub pobieranych za pomocą biblioteki klienta. Te powiadomienia pozwalają natychmiast reagować na zmiany stanu subskrypcji, dzięki czemu nie musisz wysyłać zapytań do interfejsu Google Play Developer API. Pamiętaj, że nieefektywne korzystanie z interfejsu Google Play Developer API może prowadzić do ograniczeń limitu interfejsu API.
Cloud Pub/Sub to w pełni zarządzana usługa do przesyłania wiadomości w czasie rzeczywistym, która umożliwia wysyłanie i odbieranie wiadomości między niezależnymi aplikacjami. Google Play używa Cloud Pub/Sub do publikowania powiadomień push w tematach, które subskrybujesz.
Aby otrzymywać powiadomienia, musisz utworzyć serwer backendu, który będzie przetwarzał wiadomości wysyłane do Twojego tematu. Serwer może następnie przetwarzać te wiadomości, odpowiadając na żądania HTTPS wysyłane do zarejestrowanego punktu końcowego lub korzystając z bibliotek klienta Cloud Pub/Sub. Te biblioteki są dostępne w różnych językach. Więcej informacji znajdziesz też w sekcji Tworzenie subskrypcji Pub/Sub w tym artykule.
Określanie cen i limitów
Szczegółowe informacje o cenach i limitach znajdziesz w artykule Ceny i limity.
Szacowanie użycia danych
Część danych powiadomienia o subskrypcji to około 1 KB danych na żądanie. Każde opublikowanie i pobranie wymaga osobnego żądania, czyli około 2 KB danych na powiadomienie. Liczba powiadomień miesięcznie zależy od cyklu rozliczeniowego i zachowania użytkowników. W każdym cyklu rozliczeniowym powinieneś otrzymać co najmniej 1 powiadomienie na użytkownika.
Konfigurowanie Cloud Pub/Sub
Aby włączyć powiadomienia w czasie rzeczywistym dla deweloperów, musisz najpierw skonfigurować Cloud Pub/Sub za pomocą własnego projektu Google Cloud Platform (GCP), a następnie włączyć powiadomienia w aplikacji.
Aby korzystać z Cloud Pub/Sub, musisz mieć projekt GCP z włączonym interfejsem Cloud Pub/Sub API. Jeśli nie znasz GCP i Cloud Pub/Sub, zapoznaj się z przewodnikiem Szybki start.
Tworzenie tematu
Aby zacząć otrzymywać powiadomienia, musisz utworzyć temat w którym Google Play będzie publikować powiadomienia. Aby utworzyć temat, postępuj zgodnie z instrukcjami w sekcji Tworzenie tematu.
Tworzenie subskrypcji Pub/Sub
Aby otrzymywać wiadomości publikowane w temacie, musisz utworzyć subskrypcję Pub/Sub tego tematu. Aby utworzyć subskrypcję Pub/Sub:
- Przeczytaj
przewodnik dla subskrybentów Cloud Pub/Sub
, aby określić, czy skonfigurować subskrypcję jako subskrypcję push czy subskrypcję pull.
- Subskrypcja push umożliwia usłudze Cloud Pub/Sub wysyłanie powiadomień do bezpiecznego backendu przez wysyłanie żądań HTTPS.
- Subskrypcja pull wymaga, aby bezpieczny serwer backendu inicjował żądania do serwera Cloud Pub/Sub w celu pobrania wiadomości.
- Aby utworzyć subskrypcję, postępuj zgodnie z instrukcjami w sekcji Dodawanie subskrypcji.
Przyznawanie praw do publikowania w temacie
Cloud Pub/Sub wymaga, aby przyznać Google Play uprawnienia do publikowania powiadomień w Twoim temacie.
- Otwórz konsolę Google Cloud.
- Wybierz projekt, a następnie w menu nawigacyjnym po lewej stronie kliknij Pub/Sub.
Znajdź swój temat i otwórz szczegóły uprawnień.
Rysunek 1. Dostęp do konfiguracji tematu Uprawnienia. Dodaj konto usługi
google-play-developer-notifications@system.gserviceaccount.comi przyznaj mu rolę Publikujący w Pub/Sub.
Rysunek 2. Dodawanie konta usługi Google Play jako Pub/Sub publisher. Aby zakończyć konfigurowanie tematu, kliknij Zapisz.
Rysunek 3. Skonfigurowany temat.
Włączanie powiadomień w czasie rzeczywistym dla deweloperów w aplikacji
Aby włączyć powiadomienia w czasie rzeczywistym dla deweloperów w aplikacji:
- Otwórz Konsolę Google Play.
- Wybierz swoją aplikację.
- Kliknij Zarabianie > Konfiguracja ustawień zarabiania.
U góry strony przewiń do sekcji Powiadomienia w czasie rzeczywistym dla deweloperów.
Rysunek 4. Sekcja Powiadomienia w czasie rzeczywistym dla deweloperów. Zaznacz Włącz powiadomienia w czasie rzeczywistym.
W polu Nazwa tematu wpisz pełną nazwę tematu Cloud Pub/Sub, którą skonfigurowano wcześniej. Nazwa tematu powinna być w formacie
projects/{project_id}/topics/{topic_name}gdzieproject_idto unikalny identyfikator projektu, atopic_nameto nazwa tematu utworzonego wcześniej.Aby wysłać wiadomość testową, kliknij Wyślij wiadomość testową. Przeprowadzenie testowego opublikowania pomaga upewnić się, że wszystko jest prawidłowo skonfigurowane. Jeśli testowe opublikowanie się powiedzie, pojawi się komunikat informujący o tym, że testowe opublikowanie się udało. Jeśli do tego tematu masz dołączoną subskrypcję, powinna do Ciebie dotrzeć wiadomość testowa.
W przypadku subskrypcji pull otwórz subskrypcję w Cloud Console, kliknij Wyświetl wiadomości i pobierz wiadomości. Aby uniknąć ponownego dostarczania przez Cloud Pub/Sub, musisz potwierdzić każdą pobraną wiadomość. W przypadku subskrypcji push sprawdź, czy wiadomość testowa została dostarczona do punktu końcowego push. Kod odpowiedzi o powodzeniu będzie służyć jako potwierdzenie wiadomości.
Jeśli publikowanie się nie powiedzie, pojawi się błąd. Upewnij się, że nazwa tematu jest prawidłowa i że konto usługi
google-play-developer-notifications@system.gserviceaccount.comma dostęp do tematu jako Publikujący w Pub/Sub.Wybierz typy powiadomień, które chcesz otrzymywać.
- Otrzymuj powiadomienia o subskrypcjach i wszystkich unieważnionych zakupach – otrzymuj powiadomienia w czasie rzeczywistym dla deweloperów dotyczące subskrypcji i unieważnionych zakupów. Nie będziesz otrzymywać powiadomień o zakupach produktów kupowanych raz.
- Otrzymuj wszystkie powiadomienia o subskrypcjach i produktach kupowanych raz – otrzymuj
powiadomienia o wszystkich zdarzeniach subskrypcji i unieważnionych zakupów. Będziesz też otrzymywać zdarzenia zakupu produktów kupowanych raz, takie jak
ONE_TIME_PRODUCT_PURCHASEDiONE_TIME_PRODUCT_CANCELED. Więcej informacji o tych zdarzeniach zakupu znajdziesz w artykule Cykl życia zakupu jednorazowego.
Kliknij Zapisz zmiany.
Weryfikacja konfiguracji
Aby otrzymywać powiadomienia w czasie rzeczywistym dla deweloperów, musisz utworzyć bezpieczny serwer backendu, który będzie przetwarzał wiadomości wysyłane do Twojego tematu Cloud Pub/Sub.
Możesz przetestować konfigurację, klikając przycisk Wyślij wiadomość testową w Konsoli Google Play, jak opisano w poprzedniej sekcji. Jeśli nie masz skonfigurowanego serwera backendu do przetwarzania powiadomień, możesz użyć narzędzia wiersza poleceń gcloud, aby sprawdzić konfigurację. Instrukcje dotyczące
przetwarzania wiadomości za pomocą gcloud znajdziesz w
artykule Pobieranie wiadomości z subskrypcji.