Välkommen. Om du är ny på Amazon Appstore, kolla in vår senaste introduktionsguide, Hur skickar du din app till Amazon Appstore. I dagens avsnitt går jag igenom fördelarna och kraven i Amazonas köp av inköp (IAP). Specifikt beskriver jag hur de av er med Google Play-appar som utnyttjar Googles IAB kan enkelt migrera sina program för att arbeta med Amazon IAP.
Innan vi dyker in vill jag bara återskapa fördelarna med Amazon Appstore.
När du lägger till din app i Amazon Appstore, är den synlig för Android och Fire-användare i mer än 200 länder, och utvecklare kan nu lista sina PC-, Mac- och HTML5-baserade webbappar samt Android-appar. Genom att skicka din app, webbapp eller spel till programmet kan du öka din verksamhet och intäkter.
Enligt Statista finns det för närvarande över 600.000 appar i Amazon Appstore.
Förutom dagens handledning kan du hitta en bredd av användbar information på Amazons utvecklarportal.
Om din Android-app redan finns i Google Play-butiken är det ännu enklare att gå med i Amazon Appstore. Amazon rapporterar att över 85% av Android-appar bara fungerar på Kindle Fire utan ytterligare utveckling nödvändig. Här är en kort video som guidar dig genom processen, Flyttar från Google Play till Amazon Appstore (video):
Men om du använder Googles IAB måste du byta över, och jag ska visa dig hur.
Innan jag går vidare vill jag uppmuntra dig att ta reda på eventuella frågor som du kanske har om handledningen. Skicka in dem i kommentarerna nedan eller till mig @lookahead_io på Twitter. Låt oss veta om du vill se fler handledning om Amazon Appstore eller AWS i allmänhet.
Med API för inköp av appar kan du aktivera övertygande funktionssätt och scenarier som:
Amazon API för inköp av inköp gör det möjligt för din app att presentera, bearbeta och uppfylla inköp av digitalt innehåll och abonnemang inom din appupplevelse. Om du vill aktivera den här funktionen kan du enkelt implementera API-inköpsprogrammet enligt detaljer i avsnittet om genomförande nedan:
API-programmet för inköp är utformat för att inkapsla komplexiteten bakom inköpsprocessen samtidigt som det tillhandahåller ett fullt utvalt API. API-inköps API hanterar detaljerna om inköpsflöde, betalningsbehandling, leverans av kvitto till din app och hantering av rättigheter till inköpsbart innehåll.
När du har byggt upp ett butikskonto kan du använda API-programmet för inköp för att skicka inköpsposter:
Det finns tre typer av inköpsprodukter:
Amazon-klienten är en integrerad del av API-programmet för inköp. När du har initierat ett köp, Amazonas klienten ytor och presenterar ett Amazon-märkt användargränssnitt för att slutföra transaktionen. Detta flöde används av alla appar som väljer att använda In-App Purchasing API.
Om Amazon-klienten inte är installerad eller annars inte är tillgänglig, visas ett meddelande till kunden som indikerar lämplig åtgärd.
Amazon-klienten presenterar användargränssnittet för alla aspekter av köpet av arbetsflödet. Det ger logiken att visa inköpsobjektet, utföra 1-Click-inköpen och hantera eventuella förutsättningar eller felscenarier som uppstår.
Att tillhandahålla en länk direkt till Amazon-klienten från din app är ett effektivt verktyg för att marknadsföra dina appar. Denna typ av länk kallas en djup länk. Mer information om djup länkning finns i dokumentationen.
När du utvecklar med Amazon API för inköp av inköp, är det viktigt att förstå vilka delar av inköpsflödet appen måste implementera, och vilka delar hanteras av Amazon Client.
Amazon-klienten tar hand om inköps arbetsflödet, när kunden bestämmer sig för att köpa en vara och slutar när affären ger ansökan ett kvitto för inköpet (eller annan status vid ett misslyckat köp). Utvecklare bör inte tillhandahålla inköpsdialoger, logotid för transaktionstidsavbrott eller "tack" -dialoger. Dessa tillhandahålls alla av Amazon klienten. Mer information finns i avsnittet Riktlinjer och konventioner för användargränssnittet.
Om ett inköp misslyckas kommer Amazon Client presentera meddelandet till kunden. Din app ska inte meddela kunden. Om kunden exempelvis inte har ett giltigt kreditkort på filen, omdirigerar kunden kunden till en sida där de kan uppdatera sin betalningsinformation. Du bör inte lämna en bekräftelse eller annan interstitial dialog till kunden angående inköpsflödet.
Din app | amason |
---|---|
Presenterar katalogen av in-app-artiklar till kunden för inköp | Hanterar inköpsflödet |
Låser upp inköpbar funktionalitet | Utför betalningsbehandling |
Nedladdningar på distans levererat innehåll | Hanterar säker kommunikation med Amazon-plattformen, inklusive betalningssäkerhet |
Visar och använder nedladdade digitala varor | Verifierar rättigheter och validerar inköpsbevis |
Spårar kundköp och förbrukningsförteckning | Hanterar prenumerationer, inklusive automatisk förnyelse och upphävande av rättigheter |
Din app kan utnyttja In-App Purchasing API på flera olika sätt. Hur du väljer att implementera det kan påverka hur du bygger din app. Oavsett hur du väljer att implementera det finns två grundläggande flöden tillgängliga för dig: lokalt tillgängligt innehåll och leveransbart innehåll.
Lokalt tillgängligt innehåll är upplåst eller på annat sätt tillgängligt för kunden vid inköp. Enligt den här modellen har din app redan allt som behövs för att kunden ska kunna använda inköpsobjektet, förutom rätten att använda den. Du kan använda alla tre typer inköpbara objekt med denna modell.
Din app ska innehålla de unika identifierarna för varje inköpsobjekt (SKU), möjligheten att presentera en katalog för kunden och logiken inom appen för att låsa upp inköpsobjektet vid en lyckad transaktion.
Leverantörsinnehåll ger dig möjlighet att göra nytt innehåll tillgängligt för kunden. Under den här modellen hämtar din app det nya innehållet från dina servrar och gör det tillgängligt för kunden.
Din app ska innehålla de unika identifierarna för varje inköpsobjekt (SKU), möjligheten att presentera en katalog för kunden och logiken i appen för att ladda ner, fortsätta och göra tillgängligt det nedladdade innehållet vid en lyckad transaktion.
I juli 2014 släppte Amazon in app-programmet (IAP) v2.0 API, som innehåller flera viktiga uppdateringar. Från och med den 30 april 2016 avbröt Amazon IAP v1.0 för nya och uppdaterade appinsändningar. Medan denna avskrivning inte påverkar appar som redan lever i Amazon Appstore, måste alla appar som skickas som antingen en ny eller uppdaterad app efter den 11 maj 2016 behöva använda IAP v2.0.
Låt oss nu diskutera skillnaderna mellan Google Play: s fakturering i app (IAB) och Amazons inköp av inköp (IAP) och ge en övergripande beskrivning av hur du anpassar din app för att använda båda API-uppsättningarna.
Med Google Play: s fakturering för app tillåter användare att köpa virtuella föremål direkt från din app. Till exempel kan en användare köpa ytterligare nivåer till ett spel som han eller hon spelar.
Amazons inköp för inköp är motsvarande egenskap för Amazon API. Om du har en app som använder Google Plays fakturering i appen kan du enkelt ändra din kod för att använda Amazons motsvarande inköpsfunktion. Båda API-uppsättningarna har liknande funktionalitet med vissa skillnader i namn och terminologi.
Om du kommer att skicka in en app som implementerar Google Play: s IAB till Amazon Appstore för att bli tillgänglig för att köras på Amazon-enheter, till exempel Brandtabletter, måste din app implementera Amazons IAP för köp i app. Google Play: s IAB fungerar inte på Amazon-enheter.
Tabellen nedan visar en jämförelse mellan Amazons IAP API och Google Play: s IAB API:
Funktion | IAP v2.0 (Amazon) | IAB v3.0 (Google Play) | kommentarer |
---|---|---|---|
inköp | |||
Intents hanteras av API. | Y | N | |
Ramar för enkla API-samtal som tillhandahålls. | Y | N | |
Förbruknings | Y | Y | |
Individuella förbrukningsmaterial kan köpas flera gånger. | Y | Y | |
ersättningar | |||
Köpt en gång. Användare anmälda om de försöker köpa en rättighet som de redan äger. | Y | Y | |
Prenumerationer | |||
Olika alternativ för tidsperiod som en prenumeration körs. | Y | Y | Amazonas alternativ: Veckovis, Bi-veckovis, Månadsvis, Bi-månadsvis, Kvartalsvis, Halvårsvis, Årligen Google Play: Alternativ: Månadsvis, Årligen, Säsongsbetonad |
Stöder gratis provperiod. | Y | Y | |
Alternativ för automatisk förnyelse | Y | Y | |
Uppskjuten faktureringsalternativ | N | Y | |
Mottagningsverifiering | |||
Mottagningsverifieringstjänst för inköp | Y | Y | Även om Google Play tillhandahåller kvittonsverifiering, är inte Google Plays kvittotransmissionsprocess automatiserad. |
Medan Google Play: s IAB och Amazons IAP både låter dina kunder göra samma typer av köp i app, använder Google Play och Amazon olika terminologier för sina inköpstyper. Följande tabell noterar Google Play-motsvarigheten för varje Amazon-inköpstyp:
amason | Beskrivning | Google Play Equivalent | exempel |
---|---|---|---|
förbrukningsartikel | Inköp som görs, konsumeras sedan i appen, vanligen ett spel. Kan köpas flera gånger. | Hanterade produkter i appen | Extra liv eller rörelser (inom ett spel), extra ammunition för ett spel i karaktären. |
rätt | Enstaka köp för att låsa upp åtkomst till funktioner eller innehåll i en app eller ett spel. | Hanterade produkter i appen | Lås upp extra nivåer inom ett spel eller bara "premiummedlem" -funktioner i en app. |
Prenumeration | Ger tillgång till en premium uppsättning innehåll eller funktioner under en begränsad tid. | Prenumeration | Online magasin abonnemang, fantasy fotboll liga tillgång. |
Som du kan se behandlar Google Plays IAB alla icke-prenumerationsköp på samma sätt. ett objekt köps och konsumeras av en användare. När ett objekt har konsumeras, är objektet tillgängligt i appen och konsumtionen är inspelad. För objekt som sannolikt kommer att vara engångsköp, till exempel att låsa upp nya spelnivåer, har du möjlighet att utveckla att behandla objektet som förbrukningsartiklar eller icke-förbrukningsbara och introducera logik för att säkerställa att inköp av den aktuella produkten endast inträffar en gång.
Med Amazonas IAP separeras dessa engångsköp av design från inköp, till exempel extra liv, som appanvändare kan köpa om och om igen.
Låt oss gå igenom porten av en app från Google Play: s IAB-API till Amazon IAP API:
Konfigurera din AndroidManifest.xml-fil för att definiera IAP-svarmottagaren för din app. IAP Response Receiver säkerställer att avsiktskommunikationen från Amazon Client avlyssnas av din app. Observera att om du stöder både Google Play: s IAB och Amazons IAP, behöver du inte ta bort element relaterade till IAB; de kommer helt enkelt att ignoreras av IAP.
Lägg till lämplig i din AndroidManifest.xml-fil
tagg för IAP ResponseReceiver
:
... ...
Du kan använda samma kodbas för din app, oberoende av var din app är värd. Lägg bara till logik i din app för att avgöra om appen hämtades från Amazon Appstore eller från Google Play. Beroende på var användaren hämtade appen, utföra lämpliga metoder för antingen IAP eller IAB.
Följande exempelkod bestämmer huruvida ett paket har installerats från Google Play eller Amazon Appstore:
PackageManager pkgManager = context.getPackageManager (); String installerPackageName = pkgManager.getInstallerPackageName (context.getPackageName ()); om (installerPackageName.startsWith ("com.amazon")) // Amazon annars om ("com.android.vending" .equals (installerPackageName)) // Google Play
Amazonas IAP fungerar för det mesta på samma sätt som Google Play: s IAB. När du skapar sökvägen i din kod för att implementera IAP-API bör du kunna använda ett liknande logiskt flöde till IAB, men måste redogöra för olika klass- och metodnamn.
I följande tabell kartläggs de mest använda IAP-metoderna för deras IAB-ekvivalenter:
PurchasingService-metoden | PurchasingListener callback | Svarobjekt | Ekvivalent IAB-samtal |
getUserData () | onUserDataResponse () | UserDataResponse | N / A |
getPurchaseUpdates () | onPurchaseUpdatesResponse () | PurchaseUpdatesResponse | getPurchases () |
getProductData () | onProductDataResponse () | ProductDataResponse | getSkuDetails () |
inköp() | onPurchaseResponse () | PurchaseResponse | getBuyIntent () |
notifyFulfillment () | N / A | N / A | consumePurchase () |
Observera att Amazonas notifyFulfillment ()
samtal och Google Play consumePurchase ()
samtal korrelerar med varandra något. Kallelse consumePurchase ()
På ett hanterat objekt för IAB kommer objektets tillstånd att återköpas, vilket i huvudsak omvandlas till en förbrukningsvara. Därefter visas kvittot inte längre i svaret från efterföljande samtal till getPurchases ()
. Amazon kommer att returnera kvitton för förbrukningsartiklar i samtal till getPurchaseUpdates ()
tills appen samtalar notifyFulfillment ()
.
Mer information om klasserna och metoderna för IAP finns i API-referens för app-app v2.0.
Hämta och installera App Tester-verktyget för att testa din IAP v2.0-integrerade app. Det här verktyget kan också testa API-API för mobilassocier, om din app använder dem också. Följ anvisningarna och länkarna i Testing In App Application (IAP) för att installera och använda App Tester.
När du testat din app lokalt kan du använda tjänsten Live App Testing för att betala testet din app i en levande produktionsmiljö med en vald grupp användare.
Jag hoppas att du har haft dagens guide samt vår tidigare Hur skickar du din app till Amazon Appstore-episoden. Vänligen meddela vilka Amazon Appstore-områden som du vill se omfattas mer detaljerat. Du kan skicka in dem i kommentarerna nedan eller nå mig på Twitter @lookahead_io.
Om du gillade den här handledningen, var noga med att kolla in min serie om att bygga upp en start med PHP och följ med min Envato Tuts + instruktörssida för att se några av mina andra handledningar och serier.