Slik overfører du til Amazon-innkjøp fra Google

Hva du skal skape

Velkommen. Hvis du er ny til Amazon Appstore, sjekk ut vår siste introduksjonsveiledning, Slik sender du appen til Amazon Appstore. I dagens episode går jeg gjennom fordelene og kravene til Amazon's In-App Purchasing (IAP). Spesielt skal jeg beskrive hvordan de av dere med Google Play-apper som bruker Googles IAB, enkelt kan migrere deres programmer til å jobbe med Amazon IAP.

Fordeler med Amazon Appstore

Før vi dykker inn, vil jeg bare gjenskape fordelene med Amazon Appstore. 

Når du legger appen din til Amazon Appstore, er den synlig for Android og Fire-brukere i mer enn 200 land, og utviklere kan nå liste opp sine PC-, Mac- og HTML5-baserte webapper samt Android-apper. Ved å sende inn appen din, webapps eller spill til programmet, kan du øke din virksomhet og inntekter.

Ifølge Statista er det for tiden over 600.000 apper i Amazon Appstore.

I tillegg til dagens veiledning kan du finne en bredde av nyttig informasjon på Amazons utviklerportal.

Flytter fra Google Play til Amazon App Store

Hvis Android-appen din allerede er i Google Play-butikken, er det enda enklere å bli med i Amazon Appstore. Amazon rapporterer at over 85% av Android apps bare jobber med Kindle Fire uten ekstra utvikling nødvendig. Her er en kort video som veileder deg gjennom prosessen, Flytter fra Google Play til Amazon Appstore (video):

Men hvis du bruker Googles IAB, må du bytte over, og jeg skal vise deg hvordan.

Før jeg går videre, vil jeg oppfordre deg til å komme deg ut med eventuelle spørsmål du måtte ha om opplæringen. Legg inn dem i kommentarene nedenfor eller til meg @lookahead_io på Twitter. Gi oss beskjed hvis du vil se flere opplæringsprogrammer om Amazon Appstore eller AWS generelt.

Forstå API-innkjøpsapplikasjonen

Med API for kjøp av apper kan du aktivere overbevisende funksjonssett og scenarier som:

  • Opprette en "freemium" -modell for appen din, hvor selve appen er gratis, men du tar betalt for avanserte tjenester eller funksjonalitet
  • Tillater kunder å kjøpe valuta i app direkte i appopplevelsen din
  • Tillat kunder å abonnere på innhold tilgjengelig i appen din
  • Gjør innhold tilgjengelig for kjøp som skal vises i appen din

Amazon API for kjøp av apper lar appen presentere, behandle og oppfylle kjøp av digitalt innhold og abonnementer innenfor appopplevelsen din. For å aktivere denne funksjonen må du bare implementere API for innkjøp som beskrevet i implementeringsdelen nedenfor:

API for innkjøp er designet for å inkapslere kompleksiteten bak kjøpsprosessen, samtidig som den gir en fullverdig API. API-innkjøps-API-en håndterer detaljene om kjøpsstrøm, betalingsbehandling, gir kvittering til appen din og administrerer rettigheter til det kjøpbare innholdet.

Når du har bygget et butikkvindu, kan du bruke Applikasjonsprogrammet for kjøp av varer til å kjøpe kjøpbare varer:

Det finnes tre typer kjøpbare gjenstander:

  • Forbruksvarer: innhold som ikke krever en rettighet eller tilgangsrettigheter til bruk, kan kjøpes flere ganger av en kunde, er bare tilgjengelig på enheten den er kjøpt fra, og krever ikke noen form for rettighetskontroll for bruk.
  • Rettigheter: innhold som krever en rettighet eller tilgangsrettigheter til bruk, kan kun kjøpes en gang av en kunde, og er tilgjengelig på alle kompatible enheter registrert på kundens konto.
  • Abonnementer: innhold som krever en rettighet eller tilgangsrettigheter til bruk, er bundet av en tidsperiode, automatisk fornyelse og er tilgjengelig på alle kvalifiserte enheter registrert på kundens Amazon-konto

Amazon klienten

Amazon-klienten er en integrert del av In-App Purchasing API. Når du har startet et kjøp, overgår Amazon-klienten og presenterer et Amazon-merket brukergrensesnitt for å fullføre transaksjonen. Denne flytningen brukes av alle apper som velger å benytte API-innkjøpsgrensesnittet.

Hvis Amazon-klienten ikke er installert eller ellers ikke er tilgjengelig, vises en melding til kunden som angir passende tiltak.

Amazon-klienten presenterer brukergrensesnittet for alle aspekter av kjøps arbeidsflyten. Den gir logikken for å vise det kjøpesegne elementet, utføre 1-Click-kjøpet selv og håndtere eventuelle forutsetninger eller feilscenarier som oppstår.

Å gi en link direkte til Amazon-klienten fra din app er et effektivt verktøy for å markedsføre appene dine. Denne typen kobling refereres til som en dyp lenke. Mer informasjon om dyp linking finner du i dokumentasjonen.

Adskillelse av ansvar

Når du utvikler deg med Amazon-appen for kjøp av apper, er det viktig å forstå hvilke deler av innkjøpsflyten appen må implementere, og hvilke deler håndteres av Amazon-klienten.

Amazon-klienten vil ta vare på kjøpsflyten, når kunden bestemmer seg for å kjøpe en vare og slutter når butikken gir søknaden kvittering for kjøpet (eller annen status i tilfelle et mislykket kjøp). Utviklere bør ikke oppgi kjøpsdialoger, logg for transaksjonstidsavbrudd eller "takk" -dialoger. Disse er alle levert av Amazon klienten. Vennligst se delen Retningslinjer og konvensjoner for brukergrensesnitt for flere detaljer.

I tilfelle et kjøp mislykkes, vil Amazon Client presentere meldinger til kunden; Appen din skal ikke varsle kunden. Hvis kunden for eksempel ikke har et gyldig kredittkort på fil, omdirigerer kunden kunden til en side der de kan oppdatere betalingsinformasjonen sin.. Du bør ikke gi en bekreftelse eller annen interstitial dialog til kunden angående kjøpsstrømmen.

Appen din Amazon
Presenterer katalogen av elementer i appen til kunden for kjøp Administrerer kjøpsflyten
Låser opp kjøpbar funksjonalitet Utfører betalingsbehandling
Nedlastinger eksternt levert innhold Håndterer sikker kommunikasjon med Amazon-plattformen, inkludert betalingssikkerhet
Viser og bruker nedlastede digitale varer
Verifiserer rettigheter og godkjenner kjøpskvitteringer
Sporer kundekjøp og forbruksmateriell
Forvalter abonnementer, inkludert automatisk fornyelse og tilbakekalling av rettigheter

Innholdskilder

Appen din kan utnytte API-innkjøpsgrensesnittet på en rekke måter. Hvordan du velger å implementere det, kan påvirke hvordan du bygger appen din. Uansett hvordan du velger å implementere det, er det to grunnleggende strømmer tilgjengelig for deg: lokalt tilgjengelig innhold og leverbart innhold.

Lokalt tilgjengelig innhold

Lokalt tilgjengelig innhold er ulåst eller på annen måte gjort tilgjengelig for kunden ved kjøp. Under denne modellen har appen alt du trenger for kunden til å bruke det kjøpbare produktet, unntatt retten til å bruke det. Du kan bruke alle tre typer kjøpbare varer med denne modellen.

Appen din skal inneholde de unike identifikatorene for hvert kjøpbart produkt (SKU), muligheten til å presentere en katalog til kunden og logikken i appen for å låse opp det kjøpbare produktet etter vellykket transaksjon.

Leverbart innhold

Leverbart innhold gir deg mulighet til å gjøre nytt innhold tilgjengelig for kunden. Under denne modellen laster appen ned det nye innholdet fra serverne dine og gjør det tilgjengelig for kunden.

Appen din bør inneholde unike identifikatorer for hvert kjøpbart produkt (SKU), muligheten til å presentere en katalog til kunden og logikken i appen for å laste ned, vedvare og gjøre tilgjengelig det nedlastede innholdet ved vellykket transaksjon.

Husk: IAP v1.0 har blitt utdatert

I juli 2014 lanserte Amazon Applikasjonen for appinkjøp (IAP) v2.0, som inneholder flere viktige oppdateringer. Fra og med 30. april 2016 avbrøt Amazon IAP v1.0 for nye og oppdaterte appinnlegg. Selv om denne avskrivningen ikke påvirker apper som allerede var live i Amazon Appstore, må alle apper som er sendt som enten en ny eller oppdatert app etter 11. mai 2016, bruke IAP v2.0. 

  • Hvis du vil vite mer om denne avskrivningen, kan du se bloggposten Migrere IAP v1.0 Apps til v2.0.
  • For trinnvise instruksjoner om hvordan du migrerer appen din, se Migrere fra IAP v1.0 til IAP v2.0.

Migrere fra Google Play-fakturering for apper (IAB) v3.0 til Amazon In-App Purchasing (IAP) v2.0

La oss nå diskutere forskjellene mellom Google Play's fakturering i app (IAB) og Amazon's kjøp av apper (IAP), og gi en beskrivelse på høyt nivå av hvordan du tilpasser appen din for å bruke begge API-settene.

Hva er IAB og IAP?

Google Plays faktureringsfunksjon for appen tillater brukere å foreta kjøp av virtuelle elementer direkte fra appen din. For eksempel kan en bruker kjøpe flere nivåer til et spill som han eller hun spiller. 

Amazons kjøp av innkjøp er den tilsvarende funksjonen for Amazon APIer. Hvis du har en app som bruker Google Play-fakturering i app, kan du enkelt endre koden din for å bruke Amazons tilsvarende innkjøpsfunksjon. Begge API-settene har lignende funksjonalitet med noen forskjeller i navngivning og terminologi.

Krav til Amazon Appstore og Amazon-enheter

Hvis du skal sende inn en app som implementerer Google Play's IAB til Amazon Appstore for å bli gjort tilgjengelig for å kjøre på Amazon-enheter, for eksempel Branntabletter, må appen din implementere Amazonas IAP for kjøp av apper. Google Play's IAB vil ikke fungere på Amazon-enheter.

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

Funksjonsjämförelse

Tabellen nedenfor viser en sammenligning mellom Amazonas IAP API og Google Play's IAB API:

Trekk IAP v2.0 (Amazon) IAB v3.0 (Google Play)
kommentarer
kjøp
Intents håndtert av API.
Y N
Ramme for enkle API-anrop som tilbys.
Y N
forbruks~~POS=TRUNC Y Y
Individuelle forbruksvarer kan kjøpes flere ganger.
Y Y
rettigheter
Kjøpt en gang. Brukere varslet om de prøver å kjøpe en rettighet de allerede eier. Y Y
abonnementer
En rekke alternativer for tidsperiode som et abonnement kjører. Y Y Amazonas alternativer: Ukentlig, Bi-ukentlig, Månedlig, Bi-månedlig, Kvartalsvis, Halvårlig, Årlig Google Play-alternativer: Månedlig, Årlig, Sesongmessig (tilpasset)
Støtter gratis prøveperiode. Y Y
Alternativer for automatisk fornyelse Y Y
Utsatt faktureringsalternativ N Y
Kvitteringskontroll

Kvitteringsverifiseringstjeneste for kjøp Y Y Selv om Google Play gir kvitteringsbekreftelse, er Google Plays kvitteringsbekreftelsesprosess ikke automatisert.

Google Play's Managed Objects vs Amazon's forbruksvarer og rettigheter

Mens Google Play's IAB og Amazon's IAP både lar kundene dine gjøre de samme typene av kjøp i apper, bruker Google Play og Amazon forskjellig terminologi for deres kjøpstyper. Følgende tabell noterer Google Play-ekvivalenten for hver Amazon-kjøpstype:

Amazon Beskrivelse Google Play-likeverdig eksempler
Konsum Innkjøp som er laget, og deretter forbrukes i appen, vanligvis et spill. Kan kjøpes flere ganger. Administrerte produkter i appen Ekstra liv eller bevegelser (i et spill), ekstra ammunisjon for et spill i spillet.
rett Engangskjøp for å låse opp tilgang til funksjoner eller innhold i en app eller et spill. Administrerte produkter i appen Lås opp ekstra nivåer i et spill eller kun «premiummedlem» -funksjoner i en app.
Abonnement Tilbyr tilgang til et premium sett med innhold eller funksjoner for en begrenset periode. Abonnement Online magasin abonnement, fantasy fotball liga tilgang.

Som du kan se, behandler Google Play's IAB alle ikke-abonnementskjøp på samme måte; et element er kjøpt og deretter konsumert av en bruker. Når et element har blitt brukt, er elementet tilveiebrakt i appen, og forbruket er registrert. For elementer som sannsynligvis vil være engangskjøp, for eksempel å låse opp nye spillnivåer, har du muligheten til å utvikle å behandle varen som forbruksmateriell eller ikke-forbruksvarer, og introdusere logikk for å sikre at kjøp av det aktuelle elementet bare skjer en gang. 

Med Amazonas IAP er disse engangskjøpene skilt fra design fra kjøp, for eksempel ekstra liv, som app-brukere kan kjøpe igjen og igjen.

Porting din kode

La oss gå gjennom porting av en app fra Google Play's IAB API til Amazon IAP API:

  1. Konfigurer din AndroidManifest.xml-fil for å støtte Amazonas IAP.
  2. I appen din, implementer logikk for å formidle mellom IAB og IAP.
  3. Legg til og implementer Amazon IAP API.
  4. Test appen din.

Konfigurere AndroidManifest.xml-filen

Konfigurer AndroidManifest.xml-filen din for å definere IAP Response Receiver for appen din. IAP Response Receiver sikrer at intensjonskommunikasjonen fra Amazon-klienten blir avlyst av appen din. Merk at hvis du støtter både Google Play's IAB og Amazon's IAP, trenger du ikke å fjerne elementer relatert til IAB; de vil enkelt bli ignorert av IAP.

I din AndroidManifest.xml-fil legger du til riktig  tag for IAP ResponseReceiver:

...     ... 

Implementering Logikk for å formidle mellom IAB og IAP

Du kan bruke samme kodebase for appen din, uansett hvor appen din er vert. Bare legg til logikk i appen din for å finne ut om appen ble lastet ned fra Amazon Appstore eller fra Google Play. Avhengig av hvor brukeren lastet ned appen, utfør de riktige metodene for enten IAP eller IAB.

Følgende eksempelkode bestemmer om en pakke ble installert fra Google Play eller Amazon Appstore:

PackageManager pkgManager = context.getPackageManager (); String installerPackageName = pkgManager.getInstallerPackageName (context.getPackageName ()); hvis (installerPackageName.startsWith ("com.amazon")) // Amazon annet hvis ("com.android.vending" .equals (installerPackageName)) // Google Play 

Legge til og implementere Amazon IAP API

Amazonas IAP fungerer for det meste på samme måte som Google Play's IAB. Når du oppretter banen i koden din for å implementere IAP-API, bør du kunne bruke en lignende logikkstrøm til IAB, men må oppgi forskjellige klasse- og metodenavn.

Tabellen nedenfor viser de mest brukte IAP-metodene til deres IAB-ekvivalenter:

PurchasingService-metoden PurchasingListener tilbakeringing Response Object Ekvivalent IAB-samtale
getUserData () onUserDataResponse () UserDataResponse N / A
getPurchaseUpdates () onPurchaseUpdatesResponse () PurchaseUpdatesResponse getPurchases ()
getProductData () onProductDataResponse () ProductDataResponse getSkuDetails ()
Kjøp() onPurchaseResponse () PurchaseResponse getBuyIntent ()
notifyFulfillment () N / A N / A consumePurchase ()

Merk at Amazonas notifyFulfillment () samtale og Google Play consumePurchase () ringe korrelere med hverandre noe. ringe consumePurchase ()på et administrert element for IAB vil returnere varens tilstand til "ikke-kjøpt", i hovedsak konvertere det til en forbruksvare. Deretter vil kvitteringen ikke lenger vises i svaret fra påfølgende anrop til getPurchases (). Amazon vil returnere kvitteringer for forbruksvarer i samtaler til getPurchaseUpdates () til appen ringer notifyFulfillment ().

Hvis du vil ha mer informasjon om klassene og metodene til IAP, kan du se app-API-referansen i appen v2.0.

Teste appen din

Last ned og installer App Tester-verktøyet for å teste din IAP v2.0-integrerte app. Dette verktøyet kan også teste Mobile Associates APIer, hvis appen din også bruker dem. Følg instruksjonene og koblingene i Testing i app-innkjøp (IAP) for å installere og bruke App Tester.

Etter å ha testet appen din lokalt, kan du bruke tjenesten Live App Testing til å teste appen din i et levende produksjonsmiljø med en valgt gruppe brukere.

I Avslutning

Jeg håper du har hatt glede av dagens veiledning, så vel som vår tidligere Hvordan sende inn din app til Amazon Appstore-episoden. Gi oss beskjed om hvilke Amazon Appstore-områder du vil se dekket nærmere. Du kan legge inn dem i kommentarene nedenfor eller nå meg på Twitter @lookahead_io. 

Hvis du likte denne opplæringen, vær så snill å sjekke ut serien min på å bygge opp en oppstart med PHP, og hold deg oppdatert på min Envato Tuts + instruktørside for å se noen av mine andre veiledninger og serier.

Relaterte linker

  • Slik sender du appen til Amazon Appstore (Envato Tuts +)
  • Amazon Developer Console
  • Sender appene dine til Amazon App Store
  • Amazon Appstore Publishing Ofte stilte spørsmål
  • Forstå API for innkjøp av app (IAP v1.0)
  • Migrerer fra Google Play i app-fakturering (IAB) v3.0 til Amazon In-App Purchasing (IAP) v2.0