Jak mogę wdrożyć zakup „wyłącz reklamy” w mojej grze?

18

Chciałbym dodać do mojej gry usługę „bez reklam”, aby reklamy można było usunąć za pomocą jednej płatności. Jak mogę to poprawnie wdrożyć?

Jeśli tylko zapiszę fakt, że usługa została opłacona lokalnie na urządzeniu, użytkownik będzie musiał zapłacić ponownie, jeśli w jakiś sposób usunie dane aplikacji.

użytkownik3807592
źródło
1
Druga część pytania jest zbyt szeroka (widzę, że Byte już ją zredagował); pierwsza część pytania jest niejasna. Czy pytasz, czy jest to w porządku, moralnie lub etycznie? A może pytasz, jak zapisać fakt, że usługa została opłacona na urządzeniu?
1
Na razie zakładam, że pytasz, jak to zrobić, ponieważ jest to jedyny zdalny temat na interpretację pytania.

Odpowiedzi:

29

Jeśli korzystasz z interfejsów API zakupów w Google Play w celu realizacji zakupu „wyłącz reklamy”, jest to w zasadzie obsługiwane. Będziesz chciał stworzyć niewymagalny produkt, który użytkownicy mogą kupić. Produkty niepodlegające zużyciu stanowią zasadniczo trwałą korzyść lub odblokowanie. Takie zakupy mogą zostać przywrócone do wyczyszczenia / wyczyszczenia / nowych telefonów przez użytkownika, więc nigdy nie będą musieli ponownie kupować wyłączania reklam.

Ta strona zawiera szczegółowe instrukcje dotyczące integracji interfejsu API IAP z grą. Kroki są zasadniczo:

  • Dodaj bibliotekę do projektu i zaktualizuj pliki manifestu.
  • Wiążą się IInAppBillingServicepoprzez połączenie usług.
  • Wysyłaj i odbieraj odpowiednie dane do usługi za pośrednictwem tego interfejsu ( getSkuDetailsaby uzyskać listę dostępnych produktów, getBuyIntentaby rozpocząć transakcję zakupu itp.).

Musisz także przetestować za pośrednictwem getPurchases, aby sprawdzić, czy użytkownik kupił element „wyłącz reklamy” (a jeśli tak, to faktycznie wyłącz reklamy).

Rzeczywisty element do kupienia „wyłącz reklamy” tworzysz z konsoli programisty Google Play.


źródło
Więc poczekaj, Google z góry wie, czy aplikacja ma IAP „nadające się do konsumpcji”, czy nie? Powinni naprawdę ujawnić to w sklepie; „ma zakupy w aplikacji” może znaczyć wszystko.
Random832
3
@ Random832 Nie, nie sądzę. Wie tylko, czy produkt jest subskrypcją, czy nie. Możesz wysłać żądanie „zużyć zakup” dla dowolnego produktu nieobjętego subskrypcją, to nie sam produkt jest materiałem eksploatacyjnym. Sądzę, że teoretycznie mogliby spróbować zeskanować twój plik binarny i poszukać wywołań w tym interfejsie, ale wątpię, by im to przeszkadzało.
1
Może to nie przypadek, że IAP i API to wzajemnie anagramy.
ArtOfCode
Przekręcam własny język, próbując wymówić IAP API ...
StorymasterQ
10

Jeśli nie korzystasz z narzędzi Google Play, jak w odpowiedzi Josha (zalecam jednak korzystanie z tych narzędzi). Musisz samodzielnie zarządzać tymi informacjami.

Chcesz uniknąć przechowywania czegoś lokalnie na urządzeniu użytkownika. Użytkownicy nie chcą płacić za usuwanie reklam na urządzenie lub instalację.

Musisz utrzymywać bazę danych z użytkownikami, którzy zapłacili. Po uruchomieniu (za każdym razem, gdy kupują usunięcie reklamy na innym urządzeniu), aplikacja sprawdza bazę danych, jeśli konto użytkownika zostanie znalezione, na stałe wyłączysz reklamy dla tej instalacji. Informacje o koncie użytkownika powinny być unikalne dla użytkownika, najlepiej konta Google, którego użyli do zakupu usunięcia reklamy.

Gdy użytkownik kupuje usunięcie reklamy, dodajesz informacje o koncie do bazy danych i wyłącza reklamy.

MichaelHouse
źródło