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.
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.
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.
Mit der In-App-Einkaufs-API können Sie überzeugende Funktionsgruppen und Szenarien aktivieren, z.
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:
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.
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 |
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ü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.
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.
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.
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.
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.
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.
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. |
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.
Wir zeigen Ihnen, wie Sie eine App von der IAB-API von Google Play auf die Amazon-IAP-API portieren:
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
:
… …
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
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.
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.
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.