Bine ati venit. Dacă sunteți nou la Amazon Appstore, consultați ghidul nostru introductiv recent, Cum să trimiteți aplicația dvs. la App Store Amazon. În episodul de astăzi, vă voi îndruma prin beneficiile și cerințele Amazon's Purchase In-App (IAP). Mai specific, voi descrie modul în care cei cu aplicații Google Play care utilizează IAB Google pot migra cu ușurință aplicațiile pentru a lucra cu Amazon IAP.
Înainte de a ne scufunda, vreau doar să recuperez beneficiile aplicației Amazon Appstore.
Atunci când adăugați aplicația la Amazon Appstore, este vizibilă utilizatorilor Android și Fire din mai mult de 200 de țări, iar dezvoltatorii pot lista acum aplicațiile web bazate pe PC, Mac și HTML5, precum și aplicații Android. Prin trimiterea aplicației, a aplicației web sau a jocului la program, vă puteți dezvolta afacerea și veniturile.
Potrivit lui Statista, în prezent există mai mult de 600.000 de aplicații în App Store Amazon.
În plus față de tutorialul de astăzi, puteți găsi o gamă largă de informații utile pe portalul Amazon's Developer.
Dacă aplicația dvs. Android este deja în magazinul Google Play, este chiar mai ușor să vă înscrieți în Amazon Appstore. Amazon raportează că peste 85% din aplicațiile Android lucrează doar la Foc Kindle, fără a fi necesară o dezvoltare suplimentară. Iată un scurt videoclip care vă ghidează prin proces, Mutarea de pe Google Play în Amazon Appstore (video):
Dar dacă folosiți IAB-ul Google, va trebui să treceți și vă voi arăta cum.
Înainte de a merge mai departe, vreau să vă încurajez să vă adresați întrebărilor pe care le puteți avea despre tutorial. Postați-le în comentariile de mai jos sau la mine @lookahead_io pe Twitter. Spuneți-ne dacă doriți să vedeți mai multe tutoriale despre Amazon Appstore sau AWS în general.
Cu API-ul de achiziții în aplicații, puteți activa seturi de caracteristici și scenarii convingătoare, cum ar fi:
Aplicația API pentru achiziții în aplicații Amazon permite aplicației dvs. să prezinte, să proceseze și să realizeze achiziții de conținut digital și abonamente în cadrul experienței dvs. din aplicație. Pentru a activa acest set de funcții, pur și simplu implementați API-ul de achiziții în aplicație, detaliat în secțiunea de implementare de mai jos:
Aplicația API pentru achiziții în aplicații este concepută pentru a încapsula complexitatea din spatele procesului de achiziție, oferind în același timp un API complet featured. API-ul de achiziții în aplicație va gestiona detaliile privind fluxul de cumpărare, procesarea plăților, furnizarea unei chitanțe pentru aplicația dvs. și gestionarea drepturilor asupra conținutului achiziționat.
Odată ce construiți o magazin, puteți utiliza API-ul pentru achiziții în aplicații pentru a vând elemente cumpărate:
Există trei tipuri de elemente cumpărate:
Clientul Amazon este parte integrantă a API-ului pentru achiziții în aplicații. Odată ce inițiați o achiziție, clientul Amazon se prezintă și prezintă o interfață de utilizator Amazon pentru a finaliza tranzacția. Acest flux este utilizat de toate aplicațiile care aleg să utilizeze API-ul de achiziții în aplicații.
În cazul în care Clientul Amazon nu este instalat sau nu este disponibil în alt mod, clientului îi apare un mesaj care indică modul de acțiune corespunzător.
Clientul Amazon prezintă interfața cu utilizatorul pentru toate aspectele fluxului de lucru al achiziției. Oferă logica pentru a afișa elementul cumpărat, efectua achiziția cu 1 clic în sine și rezolvă toate condițiile prealabile sau scenariile de eroare care apar.
Furnizarea unui link direct către clientul Amazon din aplicația dvs. este un instrument eficient pentru promovarea aplicațiilor dvs. Acest tip de link este denumit o legătură profundă. Mai multe informații despre legătura profundă pot fi găsite în documentație.
Atunci când se dezvoltă cu API-ul Amazon In-App Purchasing, este important să înțelegeți ce părți din fluxul de achiziție trebuie să implementeze aplicația și ce părți sunt gestionate de clientul Amazon.
Clientul Amazon va avea grijă de fluxul de achiziții, începând cu momentul în care clientul decide să achiziționeze un element și să se încheie atunci când magazinul furnizează aplicației o chitanță pentru cumpărare (sau alt statut în cazul unei achiziții nereușite). Dezvoltatorii nu ar trebui să ofere dialoguri de cumpărare, logică de expirare a tranzacțiilor sau dialoguri "Mulțumesc". Toate acestea sunt furnizate de Clientul Amazon. Consultați secțiunea Ghidul și convențiile pentru interfața cu utilizatorul pentru mai multe detalii.
În cazul în care o achiziție nu reușește, clientul Amazon va prezenta mesaje clienților; aplicația dvs. nu trebuie să comunice clientului. De exemplu, în cazul în care clientul nu are o cartelă de credit valabilă în dosar, clientul redirecționează clientul către o pagină în care își poate actualiza informațiile de plată. Nu trebuie să furnizați clientului nici o confirmare sau alt dialog interstițial cu privire la fluxul de cumpărare.
Aplicația dvs. | Amazon |
---|---|
Prezintă catalogul articolelor în aplicație către client pentru achiziționare | Gestionează fluxul de cumpărare |
Deblochează funcționalitatea cumpărabilă | Efectuează procesarea plăților |
Descărcați conținut difuzat de la distanță | Manipulează comunicarea securizată cu platforma Amazon, inclusiv securitatea plăților |
Afișează și utilizează bunuri digitale descărcate | Verifică drepturile și validează chitanțele de cumpărare |
Urmări achizițiile clienților și inventarul consumabil | Gestionează abonamentele, inclusiv reînnoirea automată și revocarea drepturilor |
Aplicația dvs. poate utiliza API-ul pentru achiziții în aplicații într-o varietate de moduri. Modul în care alegeți să îl implementați poate afecta modul în care construiți aplicația. Indiferent de modul în care alegeți să o implementați, există două fluxuri de bază disponibile pentru dvs.: conținut disponibil local și conținut livrat.
Conținutul disponibil la nivel local este deblocat sau pus la dispoziția clientului în momentul achiziționării. În cadrul acestui model, aplicația dvs. are deja tot ce are nevoie pentru ca clientul să utilizeze articolul achiziționat, cu excepția dreptului de utilizare a acestuia. Puteți utiliza toate cele trei tipuri de elemente cumpărate cu acest model.
Aplicația dvs. trebuie să conțină identificatorii unici pentru fiecare element cumpărat (SKU), abilitatea de a prezenta un catalog clientului și logica în cadrul aplicației pentru a debloca elementul cumpărat după o tranzacție de succes.
Conținutul livrat vă permite să puneți la dispoziția clientului un conținut nou. În cadrul acestui model, aplicația dvs. va descărca noul conținut de pe serverele dvs. și îl va pune la dispoziția clientului.
Aplicația dvs. trebuie să conțină identificatorii unici pentru fiecare element cumpărat (SKU), abilitatea de a prezenta un catalog clientului și logică în cadrul aplicației pentru a descărca, a persista și a pune la dispoziție conținutul descărcat după o tranzacție de succes.
În iulie 2014, Amazon a lansat API-ul API pentru achiziționarea în aplicație (IAP) v2.0, care include câteva actualizări importante. Începând cu data de 30 aprilie 2016, Amazon a depreciat IAP v1.0 pentru depunerea de noi și actualizate aplicații. În timp ce această depreciere nu afectează aplicațiile deja existente în Amazon Appstore, orice aplicații trimise ca aplicație nouă sau actualizată după 11 mai 2016 vor trebui să utilizeze IAP v2.0.
Acum, să discutăm despre diferențele dintre facturarea în aplicații Google Play (IAB) și achiziția în aplicație (IAP) a companiei Amazon și să oferim o descriere la nivel înalt a modului de adaptare a aplicației dvs. la utilizarea ambelor seturi API.
Funcția de facturare în aplicații Google Play permite utilizatorilor să facă achiziții de elemente virtuale direct din aplicație. De exemplu, un utilizator poate achiziționa niveluri suplimentare pentru un joc pe care îl joacă.
Amazon achiziționarea în aplicație este o caracteristică echivalentă pentru API-urile Amazon. Dacă aveți o aplicație care utilizează funcția de facturare în aplicații Google Play, puteți să modificați cu ușurință codul pentru a utiliza caracteristica Amazon echivalentă achiziționării în aplicație. Ambele seturi API au funcționalități similare cu unele diferențe în denumire și terminologie.
Dacă veți trimite o aplicație care utilizează IAB-ul Google Play la Amazon Appstore pentru a fi disponibilă pentru a fi difuzată pe dispozitive Amazon, cum ar fi comprimatele Fire, aplicația va trebui să implementeze IAP-ul Amazon pentru achizițiile în aplicații. Google Play IAB nu va funcționa pe dispozitivele Amazon.
Tabelul de mai jos prezintă o comparație între API-ul IAP al Amazonului și API-ul IAB al Google Play:
Caracteristică | IAP v2.0 (Amazon) | IAB v3.0 (Google Play) | Comentarii |
---|---|---|---|
Achiziții | |||
Intenții tratate de API. | Y | N | |
Cadru de apeluri simple API furnizate. | Y | N | |
Consumabile | Y | Y | |
Consumabile individuale pot fi achiziționate de mai multe ori. | Y | Y | |
drepturi | |||
Achiziționat o dată. Utilizatorii au notificat dacă încearcă să achiziționeze un drept pe care îl dețin deja. | Y | Y | |
Abonamente | |||
Varietate de opțiuni pentru perioada de timp în care se execută un abonament. | Y | Y | Opțiunile lui Amazon: săptămânal, bi-săptămânal, lunar, bi-lunar, trimestrial, semestrial, anual Opțiuni Google Play: lunar, anual, sezonier (personalizat) |
Susține perioadele de probă gratuite. | Y | Y | |
Opțiuni de reînnoire automată | Y | Y | |
Opțiunea de facturare amânată | N | Y | |
Verificarea chitanței | |||
Serviciu de verificare a recepției pentru achiziții | Y | Y | Deși Google Play nu oferă verificarea chitanței, procesul de verificare a chitanței Google Play nu este automatizat. |
În timp ce IAB-ul Google Play și IAP-ul Amazon permite clienților dvs. să facă aceleași tipuri de achiziții în aplicații, Google Play și Amazon folosesc terminologia diferită pentru tipurile de achiziții. Următorul tabel notează echivalentul Google Play pentru fiecare tip de achiziție Amazon:
Amazon | Descriere | Echivalentul Google Play | Exemple |
---|---|---|---|
Consumabil | Achiziția care este făcută, apoi consumată în cadrul aplicației, de obicei un joc. Poate fi achiziționat de mai multe ori. | Gestionate produse în aplicație | Mai multe vieți sau mișcări (în cadrul unui joc), muniție suplimentară pentru un personaj în timpul jocului. |
dreptul | Achiziționați o singură dată pentru a debloca accesul la funcții sau conținut într-o aplicație sau joc. | Gestionate produse în aplicație | Deblocați niveluri suplimentare în cadrul unui joc sau în funcție de caracteristicile "numai membrii premium" dintr-o aplicație. |
Abonament | Oferă acces la un set premium de conținut sau caracteristici pentru o perioadă limitată de timp. | Abonament | Abonament la reviste online, acces la liga de fotbal fantezie. |
După cum puteți vedea, IAB Google Play tratează toate achizițiile care nu sunt abonate în mod similar; un articol este achiziționat, apoi consumat de un utilizator. Odată ce un element a fost consumat, elementul este prevăzut în aplicație și consumul este înregistrat. Pentru articolele care ar putea fi achiziții o singură dată, cum ar fi deblocarea unor nivele noi de jocuri, aveți opțiunea ca dezvoltator de a trata elementul ca un consumabil sau non-consumabil și introduce logica pentru a vă asigura că achiziționarea acelui element are loc numai o singura data.
Cu IAP-ul Amazon, aceste achiziții unice sunt separate prin design de achiziții, cum ar fi vieți suplimentare, pe care utilizatorii de aplicații le-ar putea cumpăra din nou și din nou.
Să mergem prin portarea unei aplicații din API-ul IAB al Google Play în API-ul IAP Amazon:
Configurați fișierul AndroidManifest.xml pentru a defini receptorul de răspuns IAP pentru aplicația dvs. Receptorul de răspuns IAP asigură faptul că comunicarea de intenție de la clientul Amazon este interceptată de aplicația dvs. Rețineți că, dacă susțineți atât IAB-ul Google Play IAP, cât și IAP-ul Amazon, nu este necesar să eliminați elementele legate de IAB; ele vor fi pur și simplu ignorate de IAP.
În fișierul AndroidManifest.xml, adăugați fișierul corespunzător
etichetă pentru IAP ResponseReceiver
:
... ...
Puteți utiliza aceeași bază de cod pentru aplicația dvs., indiferent de locul în care este găzduită aplicația dvs. Trebuie doar să adăugați o logică în aplicația dvs. pentru a determina dacă aplicația a fost descărcată de pe Amazon Appstore sau de pe Google Play. În funcție de locul în care utilizatorul a descărcat aplicația, executați metodele corespunzătoare fie pentru IAP, fie pentru IAB.
Următorul exemplu de cod determină dacă un pachet a fost instalat din Google Play sau din AppStore Amazon:
PackageManager pkgManager = context.getPackageManager (); String installerPackageName = pkgManager.getInstallerPackageName (context.getPackageName ()); dacă installerPackageName.startsWith ("com.amazon")) // Amazon altfel dacă ("com.android.vending" .equals (installerPackageName)) // Google Play
În cea mai mare parte, IAP-ul Amazon funcționează similar cu IAB-ul Google Play. Când creați calea din codul dvs. pentru a implementa API-ul IAP, ar trebui să puteți utiliza un flux logic similar la IAB, dar va trebui să contabilizați diferite nume de clase și metode.
Tabelul următor prezintă cele mai utilizate metode IAP la echivalentele lor IAB:
Metoda achiziției | Apelul la apelul pentru achiziționarea apelului | Obiect de răspuns | Echivalent apel IAB |
getUserData () | onUserDataResponse () | UserDataResponse | N / A |
getPurchaseUpdates () | onPurchaseUpdatesResponse () | PurchaseUpdatesResponse | getPurchases () |
getProductData () | onProductDataResponse () | ProductDataResponse | getSkuDetails () |
cumpărare() | onPurchaseResponse () | PurchaseResponse | getBuyIntent () |
notifyFulfillment () | N / A | N / A | consumePurchase () |
Rețineți că Amazon notifyFulfillment ()
apel și Google Play consumePurchase ()
apelul se corelează unele cu altele. apel consumePurchase ()
pe un articol gestionat pentru IAB va returna starea articolului la "uncurchased", transformându-l în principal într-un consumabil. După aceasta, chitanța nu va mai apărea în răspunsul de la apelurile ulterioare către getPurchases ()
. Amazon va returna încasările pentru articolele consumabile în apelurile către getPurchaseUpdates ()
până când apelurile vor fi trimise notifyFulfillment ()
.
Pentru mai multe informații despre clasele și metodele IAP, consultați referința API pentru achiziții în aplicații v2.0.
Descărcați și instalați instrumentul App Tester pentru a testa aplicația integrată IAP v2.0. Acest instrument poate testa, de asemenea, API-urile Mobile Associates, dacă aplicația dvs. le utilizează și pe acestea. Urmați instrucțiunile și linkurile din Testarea achiziției în aplicație (IAP) pentru a instala și utiliza Testerul de aplicații.
După ce testați aplicația la nivel local, puteți utiliza serviciul Live App Testing pentru a testa aplicația beta într-un mediu de producție live cu un grup select de utilizatori.
Sper că v-ați bucurat de ghidul de astăzi, precum și de modul nostru de a transmite aplicația dvs. la episodul Amazon Appstore. Spuneți-ne care dintre zonele Amazon Appstore pe care doriți să le vedeți acoperite în detaliu. Puteți să le postați în comentariile de mai jos sau să mă contactați pe Twitter @lookahead_io.
Dacă v-ați plăcut acest tutorial, vă rugăm să verificați seria mea despre construirea unui startup cu PHP și să țineți pasul cu pagina de instructor Envato Tuts + pentru a vedea unele dintre celelalte tutoriale și serii.