So führen Sie eine Migration von Amazon zu In-App-Käufen von Google durch

Was Sie erstellen werden

Herzlich willkommen. Wenn Sie den Amazon Appstore noch nicht kennen, lesen Sie unser aktuelles Einführungshandbuch zum Senden Ihrer App an den Amazon Appstore. In der heutigen Episode werde ich Ihnen die Vorteile und Anforderungen des In-App-Einkaufs von Amazon (IAP) von Amazon erläutern. Im Einzelnen beschreibe ich, wie diejenigen von Ihnen, die Google Play-Apps nutzen, die IAB von Google nutzen, ihre Anwendungen problemlos für die Zusammenarbeit mit Amazon IAP migrieren können.

Vorteile des Amazon Appstore

Bevor wir eintauchen, möchte ich nur die Vorteile des Amazon Appstore zusammenfassen. 

Wenn Sie Ihre App zum Amazon Appstore hinzufügen, ist sie für Android- und Fire-Benutzer in mehr als 200 Ländern sichtbar. Entwickler können jetzt ihre PC-, Mac- und HTML5-basierten Web-Apps sowie Android-Apps auflisten. Indem Sie Ihre App, Web-App oder Ihr Spiel an das Programm senden, können Sie Ihr Geschäft und Ihren Umsatz steigern.

Laut Statista gibt es derzeit mehr als 600.000 Apps im Amazon Appstore.

Neben dem heutigen Tutorial finden Sie eine Vielzahl hilfreicher Informationen auf dem Developer Portal von Amazon.

Umstieg von Google Play in den Amazon App Store

Wenn sich Ihre Android-App bereits im Google Play Store befindet, können Sie noch einfacher dem Amazon Appstore beitreten. Amazon berichtet, dass über 85% der Android-Apps auf Kindle Fire funktionieren und keine weitere Entwicklung erforderlich ist. Hier ist ein kurzes Video, das Sie durch den Vorgang führt: Von Google Play zum Amazon Appstore (Video):

Wenn Sie jedoch IAB von Google verwenden, müssen Sie umstellen, und ich zeige Ihnen, wie das geht.

Bevor ich fortfahre, möchte ich Sie dazu anregen, sich mit Ihren Fragen zum Tutorial anzusprechen. Posten Sie sie in den Kommentaren unten oder an me @lookahead_io auf Twitter. Teilen Sie uns mit, wenn Sie weitere Tutorials zum Amazon Appstore oder AWS im Allgemeinen sehen möchten.

Informationen zur In-App-Einkaufs-API

Mit der In-App-Einkaufs-API können Sie überzeugende Funktionsgruppen und Szenarien aktivieren, z.

  • Erstellen eines "Freemium" -Modells für Ihre App, bei dem die App selbst kostenlos ist, Sie jedoch eine Prämie für erweiterte Dienste oder Funktionen berechnen
  • Kunden können In-App-Währungen direkt im App-Erlebnis erwerben
  • Kunden können in ihrer App verfügbare Inhalte abonnieren
  • Inhalte zum Kauf verfügbar machen, damit sie in Ihrer App angezeigt werden können

Mit der Amazon In-App-Einkaufs-API kann Ihre App Käufe digitaler Inhalte und Abonnements innerhalb Ihrer App-Erfahrung präsentieren, verarbeiten und durchführen. Um dieses Feature-Set zu aktivieren, implementieren Sie einfach die In-App-Einkaufs-API wie im Implementierungsabschnitt unten beschrieben:

Die In-App-Einkaufs-API ist so konzipiert, dass sie die Komplexität des Kaufprozesses erfasst und gleichzeitig eine voll funktionsfähige API bietet. Die In-App-Einkaufs-API wird die Details zum Kaufablauf, zur Zahlungsabwicklung, zur Übermittlung einer Quittung an Ihre App und zur Verwaltung der Rechte an den käuflichen Inhalten verarbeiten.

Nachdem Sie eine Storefront erstellt haben, können Sie die In-App-Einkaufs-API verwenden, um käufliche Artikel zu verkaufen.

Es gibt drei Arten von käuflichen Artikeln:

  • Verbrauchsmaterialien: Inhalte, für die keine Berechtigung oder Zugriffsrechte erforderlich sind, können von einem Kunden mehrmals erworben werden. Er ist nur auf dem Gerät verfügbar, von dem er gekauft wurde, und erfordert keine Berechtigungsprüfung.
  • Berechtigungen: Inhalte, für die eine Berechtigung oder Zugriffsrechte erforderlich sind, können von einem Kunden nur einmal erworben werden und sind auf allen kompatiblen Geräten verfügbar, die im Kundenkonto registriert sind.
  • Abonnements: Inhalte, für die eine Berechtigung oder Zugriffsrechte erforderlich sind, sind an einen bestimmten Zeitraum gebunden, werden automatisch erneuert und sind auf allen berechtigten Geräten verfügbar, die beim Amazon-Konto des Kunden registriert sind

Der Amazon-Client

Der Amazon-Client ist ein wesentlicher Bestandteil der In-App-Einkaufs-API. Wenn Sie einen Kauf initiieren, wird der Amazon-Client angezeigt und zeigt eine Amazon-Benutzeroberfläche, um die Transaktion abzuschließen. Dieser Ablauf wird von allen Apps verwendet, die sich für die In-App-Einkaufs-API entscheiden.

Wenn der Amazon-Client nicht installiert ist oder anderweitig nicht verfügbar ist, wird dem Kunden eine Nachricht angezeigt, die die geeignete Vorgehensweise angibt.

Der Amazon-Client bietet die Benutzeroberfläche für alle Aspekte des Einkaufsablaufs. Sie bietet die Logik, um den Kaufartikel anzuzeigen, den 1-Click-Kauf selbst durchzuführen und auftretende Vorbedingungen oder Fehlerszenarien zu behandeln.

Das Bereitstellen eines Links direkt zum Amazon-Client aus Ihrer App heraus ist ein wirksames Werkzeug zum Werben für Ihre Apps. Diese Art von Verbindung wird als Deep Link bezeichnet. Weitere Informationen zum Deep Linking finden Sie in der Dokumentation.

Aufteilung der Verantwortlichkeiten

Bei der Entwicklung mit der Amazon In-App-Einkaufs-API ist es wichtig zu wissen, welche Teile des Einkaufsablaufs die App implementieren muss und welche Teile vom Amazon-Client verarbeitet werden.

Der Amazon-Client kümmert sich um den Kauf-Workflow, beginnend mit der Entscheidung des Kunden, einen Artikel zu kaufen, und endet, wenn die Filiale dem Antrag eine Quittung für den Kauf (oder einen anderen Status bei einem fehlgeschlagenen Kauf) übergibt.. Entwickler sollten keine Kaufdialogfelder, keine Transaktionszeitlimitlogik oder "Danke" -Dialogfelder bereitstellen. Diese werden alle vom Amazon-Client bereitgestellt. Weitere Informationen finden Sie im Abschnitt Richtlinien und Konventionen der Benutzeroberfläche.

Sollte ein Kauf nicht erfolgreich sein, wird der Amazon Client dem Kunden eine Benachrichtigung übermitteln. Ihre App sollte den Kunden nicht benachrichtigen. Wenn der Kunde beispielsweise keine gültige Kreditkarte hinterlegt hat, leitet der Kunde den Kunden auf eine Seite um, auf der er seine Zahlungsinformationen aktualisieren kann. Sie sollten dem Kunden keine Bestätigung oder einen anderen Interstitial-Dialog bezüglich des Einkaufsablaufs zur Verfügung stellen.

Ihre App Amazonas
Präsentiert dem Kunden den Katalog der In-App-Artikel zum Kauf Verwaltet den Einkaufsfluss
Schaltet kaufbare Funktionen frei Führt die Zahlungsabwicklung durch
Downloads aus der Ferne gelieferte Inhalte Bewältigt die sichere Kommunikation mit der Amazon-Plattform, einschließlich der Zahlungssicherheit
Zeigt heruntergeladene digitale Waren an und verwendet sie
Überprüft die Berechtigungen und validiert die Kaufquittungen
Verfolgt Kundeneinkäufe und Verbrauchsmaterial
Verwaltet Abonnements, einschließlich der automatischen Verlängerung und des Widerrufs von Berechtigungen

Inhaltsquellen

Ihre App kann die In-App-Einkaufs-API auf verschiedene Weise nutzen. Wie Sie sich für die Implementierung entscheiden, kann sich darauf auswirken, wie Sie Ihre App erstellen. Unabhängig von Ihrer Wahl stehen Ihnen zwei grundlegende Abläufe zur Verfügung: lokal verfügbare Inhalte und lieferbare Inhalte.

Lokal verfügbarer Inhalt

Lokal verfügbare Inhalte werden beim Kauf freigeschaltet oder dem Kunden anderweitig zur Verfügung gestellt. Unter diesem Modell hat Ihre App bereits alles, was der Kunde zur Verwendung des Kaufgegenstands benötigt, mit Ausnahme des Nutzungsrechts. Sie können alle drei Arten von käuflichen Artikeln mit diesem Modell verwenden.

Ihre App sollte die eindeutigen Bezeichner für jeden zu kaufenden Artikel (SKUs) enthalten, die Möglichkeit, dem Kunden einen Katalog zu präsentieren, und eine Logik innerhalb der App, um den Kaufartikel bei erfolgreicher Transaktion zu entsperren.

Lieferbarer Inhalt

Mit lieferbaren Inhalten können Sie dem Kunden neue Inhalte zur Verfügung stellen. Bei diesem Modell lädt Ihre App die neuen Inhalte von Ihren Servern herunter und stellt sie dem Kunden zur Verfügung.

Ihre App sollte die eindeutigen Bezeichner für jedes zu kaufende Produkt (SKUs) enthalten, die Möglichkeit, dem Kunden einen Katalog zu präsentieren, und eine Logik innerhalb der App, um heruntergeladene Inhalte herunterzuladen, zu speichern und bei erfolgreicher Transaktion verfügbar zu machen.

Denken Sie daran: IAP v1.0 ist veraltet

Im Juli 2014 hat Amazon die In-App Purchasing-API (IAP) 2.0 veröffentlicht, die mehrere wichtige Updates enthält. Zum 30. April 2016 hat Amazon IAP v1.0 für neue und aktualisierte App-Einsendungen nicht mehr empfohlen. Diese Abschreibung wirkt sich zwar nicht auf Apps aus, die sich bereits im Amazon Appstore befanden, aber alle Apps, die nach dem 11. Mai 2016 als neue oder aktualisierte App eingereicht wurden, müssen IAP v2.0 verwenden. 

  • Weitere Informationen zu dieser Abneigung finden Sie im Blogeintrag Migrieren Sie Ihre IAP v1.0-Apps auf v2.0.
  • Schrittweise Anweisungen zum Migrieren Ihrer App finden Sie unter Migration von IAP Version 1.0 auf IAP Version 2.0.

Migration von In-App-Billing (IAB) der Version 3.30 von Google Play zu Amazon In-App Purchasing (IAP), Version 2.0

Lassen Sie uns nun die Unterschiede zwischen In-App Billing (IAB) von Google Play und In-App Purchasing (IAP) von Amazon erläutern und eine allgemeine Beschreibung der Anpassung Ihrer App für die Verwendung beider API-Sets geben.

Was sind IAB und IAP??

Mit der In-App-Abrechnungsfunktion von Google Play können Nutzer virtuelle Artikel direkt über Ihre App kaufen. Zum Beispiel kann ein Benutzer zusätzliche Level für ein Spiel erwerben, das er gerade spielt. 

Der In-App-Einkauf von Amazon ist die äquivalente Funktion für Amazon-APIs. Wenn Sie über eine App verfügen, die die In-App-Abrechnungsfunktion von Google Play verwendet, können Sie Ihren Code leicht ändern, um die entsprechende In-App-Kauffunktion von Amazon zu verwenden. Beide API-Sets verfügen über eine ähnliche Funktionalität mit einigen Unterschieden bei der Benennung und Terminologie.

Voraussetzungen für den Amazon Appstore und Amazon-Geräte

Wenn Sie eine App, die das IAB von Google Play implementiert, an den Amazon Appstore senden, um auf Amazon-Geräten wie Fire-Tablets ausgeführt zu werden, muss Ihre App Amazon IAP für In-App-Käufe implementieren. Das IAB von Google Play funktioniert auf Amazon-Geräten nicht.

Amazon IAP v2.0 vs. Google Play IAB v3.0

Funktionsvergleich

Die folgende Tabelle zeigt einen Vergleich zwischen der Amazon-API von Amazon und der IAB-API von Google Play:

Merkmal IAP v2.0 (Amazon) IAB v3.0 (Google Play)
Bemerkungen
Einkäufe
Absichten, die von API behandelt werden.
Y N
Framework für einfache API-Aufrufe.
Y N
Verbrauchsmaterial Y Y
Einzelne Verbrauchsartikel können mehrfach gekauft werden.
Y Y
Ansprüche
Einmal gekauft Benutzer werden benachrichtigt, wenn sie versuchen, eine Berechtigung zu erwerben, die sie bereits besitzen. Y Y
Abonnements
Verschiedene Optionen für den Zeitraum, für den ein Abonnement ausgeführt wird. Y Y Amazon-Optionen: Wöchentlich, Zweiwöchentlich, Monatlich, Zweimonatlich, Vierteljährlich, Halbjährlich, Jährlich Google Play-Optionen: Monatlich, Jährlich, Saisonal (benutzerdefiniert)
Unterstützt kostenlose Testzeiten. Y Y
Optionen für die automatische Erneuerung Y Y
Option für verzögerte Abrechnung N Y
Empfangsbestätigung

Empfangsbestätigungsservice für Einkäufe Y Y Obwohl Google Play eine Empfangsbestätigung bietet, ist der Bestätigungsprozess von Google Play nicht automatisiert.

Verwaltete Objekte von Google Play vs. Verbrauchsmaterialien und Berechtigungen von Amazon

Während der IAB von Google Play und der IAP von Amazon sowohl Ihren Kunden die gleichen Arten von In-App-Käufen ermöglichen, verwenden Google Play und Amazon unterschiedliche Terminologie für ihre Kauftypen. In der folgenden Tabelle sind die Google Play-Entsprechungen für jeden Amazon-Kauftyp aufgeführt:

Amazonas Beschreibung Google Play-Entsprechung Beispiele
Verbrauchbar Kauf, der gemacht wird und dann in der App verbraucht wird, normalerweise ein Spiel. Kann mehrmals gekauft werden. Verwaltete In-App-Produkte Zusätzliche Leben oder Züge (innerhalb eines Spiels), zusätzliche Munition für einen Charakter im Spiel.
Anspruch Einmaliger Kauf, um den Zugriff auf Funktionen oder Inhalte in einer App oder einem Spiel freizugeben. Verwaltete In-App-Produkte Schalten Sie zusätzliche Levels innerhalb eines Spiels frei oder "nur Premium-Mitglieder" innerhalb einer App.
Abonnement Bietet für einen begrenzten Zeitraum Zugriff auf eine Reihe erstklassiger Inhalte oder Funktionen. Abonnement Online-Magazin-Abonnement, Zugang zur Fantasy-Football-Liga.

Wie Sie sehen, behandelt das IAB von Google Play alle Einkäufe, die nicht über ein Abonnement abgewickelt werden, ähnlich. Ein Artikel wird gekauft und dann von einem Benutzer verbraucht. Nachdem ein Artikel verbraucht wurde, wird der Artikel in der App bereitgestellt und der Verbrauch wird aufgezeichnet. Bei Elementen, die wahrscheinlich einmalig gekauft werden, z. B. beim Freischalten neuer Spielebenen, haben Sie als Entwickler die Möglichkeit, den Artikel als Verbrauchsartikel oder Nichtverbrauchsartikel zu behandeln und eine Logik einzuführen, um sicherzustellen, dass nur der Kauf dieses Artikels erfolgt Einmal. 

Mit Amazons IAP werden diese einmaligen Einkäufe vom Design getrennt von Einkäufen, z. B. zusätzlichen Nutzungsdauern, die App-Benutzer immer wieder kaufen.

Portierung Ihres Codes

Wir zeigen Ihnen, wie Sie eine App von der IAB-API von Google Play auf die Amazon-IAP-API portieren:

  1. Konfigurieren Sie Ihre AndroidManifest.xml-Datei für die Unterstützung von Amazons IAP.
  2. Implementieren Sie in Ihrer App eine Logik, um zwischen IAB und IAP zu vermitteln.
  3. Fügen Sie die Amazon IAP-API hinzu und implementieren Sie sie.
  4. Testen Sie Ihre App.

Konfigurieren Sie Ihre AndroidManifest.xml-Datei

Konfigurieren Sie Ihre AndroidManifest.xml-Datei, um den IAP Response Receiver für Ihre App zu definieren. Der IAP-Antwortempfänger stellt sicher, dass die beabsichtigte Kommunikation vom Amazon-Client von Ihrer App abgefangen wird. Wenn Sie sowohl das IAB von Google Play als auch das IAP von Amazon unterstützen, müssen Sie keine Elemente entfernen, die sich auf IAB beziehen. Sie werden von IAP einfach ignoriert.

Fügen Sie in Ihrer AndroidManifest.xml-Datei die entsprechende Datei hinzu  Tag für das IAP ResponseReceiver:

    

Implementieren einer Logik zur Vermittlung zwischen IAB und IAP

Sie können dieselbe Codebasis für Ihre App verwenden, unabhängig davon, wo Ihre App gehostet wird. Fügen Sie Ihrer App einfach Logik hinzu, um festzustellen, ob die App aus dem Amazon Appstore oder von Google Play heruntergeladen wurde. Führen Sie je nachdem, wo der Benutzer die App heruntergeladen hat, die entsprechenden Methoden für IAP oder IAB aus.

Der folgende Beispielcode bestimmt, ob ein Paket von Google Play oder dem Amazon Appstore installiert wurde:

PackageManager pkgManager = context.getPackageManager (); Zeichenfolge installerPackageName = pkgManager.getInstallerPackageName (context.getPackageName ()); if (installerPackageName.startsWith ("com.amazon")) // Amazon else if ("com.android.vending" .equals (installerPackageName)) // Google Play 

Hinzufügen und Implementieren der Amazon IAP-API

Amazon IAP funktioniert zum größten Teil ähnlich wie IAB von Google Play. Wenn Sie den Pfad in Ihrem Code erstellen, um die IAP-API zu implementieren, sollten Sie in der Lage sein, einen ähnlichen logischen Fluss wie IAB zu verwenden, müssen jedoch unterschiedliche Klassen- und Methodennamen berücksichtigen.

In der folgenden Tabelle werden die am häufigsten verwendeten IAP-Methoden ihren IAB-Äquivalenten zugeordnet:

PurchasingService-Methode PurchasingListener-Rückruf Antwortobjekt Äquivalenter IAB-Anruf
getUserData () onUserDataResponse () UserDataResponse N / A
getPurchaseUpdates () onPurchaseUpdatesResponse () PurchaseUpdatesResponse getPurchases ()
getProductData () onProductDataResponse () ProductDataResponse getSkuDetails ()
Kauf() onPurchaseResponse () PurchaseResponse getBuyIntent ()
notifyFulfillment () N / A N / A consumePurchase ()

Beachten Sie, dass Amazon notifyFulfillment () Anruf und Google Play consumePurchase () Aufruf korrelieren etwas miteinander. Berufung consumePurchase ()Bei einem verwalteten Element für IAB wird der Status des Elements auf "nicht gekauft" zurückgesetzt, wobei es im Wesentlichen in ein Verbrauchsmaterial umgewandelt wird. Danach erscheint der Beleg in der Antwort von nachfolgenden Anrufen nicht mehr getPurchases (). Amazon wird die Quittungen für Verbrauchsartikel in Anrufen an zurücksenden getPurchaseUpdates () bis die App aufruft notifyFulfillment ().

Weitere Informationen zu den Klassen und Methoden von IAP finden Sie in der In-App-Einkaufs-API-Referenz v2.0.

Testen Sie Ihre App

Laden Sie das App Tester-Tool herunter und installieren Sie es, um Ihre in IAP v2.0 integrierte App zu testen. Dieses Tool kann auch Mobile Associates-APIs testen, wenn diese auch von Ihrer App verwendet werden. Folgen Sie den Anweisungen und Links unter Testen des In-App-Einkaufs (IAP), um App Tester zu installieren und zu verwenden.

Nachdem Sie Ihre App lokal getestet haben, können Sie den Live App Testing-Dienst verwenden, um Ihre App in einer Live-Produktionsumgebung mit einer ausgewählten Benutzergruppe einem Beta-Test zu unterziehen.

Abschließend

Ich hoffe, Ihnen hat der heutige Leitfaden sowie unser früherer Abschnitt Wie Sie Ihre App bei Amazon Appstore einreichen können, gefallen. Teilen Sie uns bitte mit, welche Amazon Appstore-Bereiche Sie detaillierter sehen möchten. Sie können sie in den Kommentaren unten posten oder mich auf Twitter @lookahead_io erreichen. 

Wenn Ihnen dieses Tutorial gefallen hat, lesen Sie bitte meine Serie zum Aufbau eines Startups mit PHP. Halten Sie sich auf der Envato Tuts + Instructor-Seite auf dem Laufenden, um einige meiner anderen Tutorials und Serien zu sehen.

ähnliche Links

  • So senden Sie Ihre App an den Amazon Appstore (Envato Tuts +)
  • Amazon Developer Console
  • Senden Sie Ihre Apps an den Amazon App Store
  • Amazon Appstore Publishing - Häufig gestellte Fragen
  • Grundlegendes zur In-App-Einkaufs-API (IAP v1.0)
  • Migration von Google Play In-App Billing (IAB) Version 3.0 zu Amazon In-App Purchasing (IAP) Version 2.0