Základy a konfigurace nákupu v aplikaci v Xamarin.iOS

Implementace nákupů v aplikaci vyžaduje, aby aplikace využívala rozhraní API StoreKitu na zařízení. StoreKit spravuje veškerou komunikaci se servery Apple iTunes za účelem získání informací o produktu a provádění transakcí. Profil zřizování musí být nakonfigurovaný pro nákup v aplikaci a informace o produktu musí být zadané v Připojení iTunes.

StoreKit manages all communication with Apple’s as shown in this chart

Použití App Storu k poskytování nákupů v aplikaci vyžaduje následující nastavení a konfiguraci:

  • iTunes Připojení – Konfigurace produktů pro prodej a nastavení uživatelských účtů sandboxu pro testování nákupu Musíte také poskytnout společnosti Apple své bankovní a daňové údaje, aby mohly odesílat finanční prostředky shromážděné vaším jménem.
  • Portál zřizování pro iOS – Vytvoření identifikátoru sady a povolení přístupu k App Storu pro vaši aplikaci
  • Sada Store – Přidání kódu do aplikace pro zobrazení produktů, nákup produktů a obnovení transakcí.
  • Vlastní kód – Sledování nákupů provedených zákazníky a poskytování produktů nebo služeb, které zakoupili. Je také možné, že budete potřebovat implementovat proces na straně serveru, abyste ověřili účtenky, pokud vaše produkty obsahují obsah stažený ze serveru (například knihy a problémy časopisu).

Existují dvě "serverová prostředí" sady Store Kit:

  • Výroba – Transakce se skutečnými penězi. Přístupná pouze prostřednictvím aplikací, které byly odeslány a schváleny společností Apple. Než budou dostupné v produkčním prostředí, musí být produkty nákupu v aplikaci také zkontrolovány a schváleny.
  • Sandbox – kde probíhá testování. Produkty jsou k dispozici hned po vytvoření (proces schválení se vztahuje pouze na produkční prostředí). Transakce v sandboxu vyžadují k provádění transakcí testovací uživatele (ne skutečné Apple ID).

Pravidla nákupu v aplikaci

V aplikaci nemůžete přijímat jiné způsoby platby za digitální produkty nebo služby ani je nezmínit ani na ně odkazovat uživatele z aplikace. To znamená, že při nákupu v aplikaci nemůžete přijímat platební karty ani PayPal, což je nejvhodnější způsob platby. Existují zvláštní případy pro nákup digitálních produktů mimo aplikaci, ale pro použití v aplikaci, například nákup knih na webu, které jsou spojené s určitým "přihlášením" a použití tohoto přihlášení v aplikaci umožňuje uživateli získat přístup k zakoupeným knihům. Aplikace, které tímto způsobem fungují, nesmí zmínit ani propojit funkci externího nákupu – vývojáři musí tuto funkci sdělit svým uživatelům jinými způsoby (třeba prostřednictvím e-mailového marketingu nebo jiného přímého kanálu).

Protože ale nemůžete používat nákupy v aplikaci pro fyzické zboží, můžete v takovém případě použít alternativní platební mechanismus (např. platební kartu, PayPal) z aplikace.

Společnost Apple musí schválit každý produkt před jeho prodejem – název, popis a snímek obrazovky s "produktem" se vyžaduje ke kontrole. Časy kontroly produktů jsou stejné jako u recenzí aplikací.

Pro svůj produkt nemůžete zvolit žádnou cenu – můžete vybrat pouze cenovou úroveň, která má určitou hodnotu v každé zemi nebo měně, kterou Apple podporuje. Na různých trzích nemůžete mít jinou cenovou úroveň.

Konfigurace

Před napsáním jakéhokoli nákupního kódu v aplikaci musíte v iTunes Připojení (itunesconnect.apple.com) a portálu pro zřizování pro iOS (developer.apple.com/iOS) udělat určitou práci.

Před napsání libovolného kódu byste měli provést tyto tři kroky:

  • Apple Developer Account – Odešlete své bankovní a daňové údaje společnosti Apple.
  • Portál zřizování pro iOS – Ujistěte se, že vaše aplikace má platné ID aplikace (ne zástupný znak se hvězdičkou * v ní) a má povolenou funkci Nákup aplikace.
  • iTunes Připojení Správa aplikací – přidejte do své aplikace produkty.

Vývojářský účet Apple

Vytváření a distribuce bezplatných aplikací vyžaduje v iTunes velmi malou konfiguraci Připojení, ale pokud chcete prodávat placené aplikace nebo nákupy v aplikaci, musíte apple poskytnout informace o bankovnictví a zdanění. V hlavní nabídce zobrazené zde klikněte na Smlouvy, Daň a bankovnictví :

Click on Agreements, Tax and Banking from the main menu

Váš vývojářský účet by měl mít v platnost kontrakt placených aplikací pro iOS, jak je znázorněno na tomto snímku obrazovky:

Your Developer Account should have an iOS Paid Applications contract in effect

Dokud nebudete mít kontrakt placených aplikací pro iOS, nebudete moci testovat žádné funkce StoreKit – volání StoreKitu ve vašem kódu selžou, dokud Apple nezpracoval vaše smlouvy, daně a bankovní informace.

Portál zřizování iOS

Nové aplikace jsou nastavené v části ID aplikací na portálu zřizování pro iOS. Pokud chcete vytvořit nové ID aplikace, přejděte do Centra pro zřizování pro iOS, přejděte do části Certifikáty, Identifikátory a Profily portálu a klikněte na Identifikátory v aplikacíchpro iOS. Potom kliknutím na +v pravém horním rohu vygenerujte nové ID aplikace.

Formulář pro vytváření nových ID aplikací

vypadá takto:

The form for creating new App IDs

Zadejte něco vhodného pro popis, abyste mohli toto ID aplikace snadno identifikovat v seznamu. Jako předponu ID aplikace vyberte ID týmu.

Formát přípony ID aplikace nebo identifikátoru sady prostředků

Můžete použít libovolný řetězec, který se vám líbí pro identifikátor sady prostředků (pokud je jedinečný ve vašem účtu), ale Apple doporučuje, abyste místo použití libovolného řetězce použili reverzní formát DNS. Ukázková aplikace, která doprovází tento článek, používá pro identifikátor balíčku com.xamarin.storekit.testing, ale stejně platná by byla použití identifikátoru, jako je my_store_example (i když ho Apple nedoporučuje).

Důležité

Apple také umožňuje přidat hvězdičku se zástupnými čarami na konec identifikátoru sady, aby bylo možné použít jedno ID aplikace pro více aplikací, ale ID aplikací se zástupnými čarami nelze použít pro In-AppPurchase. Příkladem identifikátoru sady se zástupnými znaky může být com.xamarin.*

Povolení služby App Services

Všimněte si, že nákup v aplikaci se automaticky povolí v seznamu Služeb:

In-App Purchase will be automatically enabled in the Services list

Zřizovací profily

Vytvořte profily pro zřizování pro vývoj a produkční prostředí stejně jako obvykle a vyberte ID aplikace, které jste nastavili pro nákup v aplikaci. Další informace najdete v průvodcích zřizováním a publikováním zařízení s iOSem v App Storu.

Připojení iTunes

Kliknutím na Moje aplikace v iTunes Připojení můžete vytvořit nebo upravit položku aplikace pro iOS. Stránka přehledu aplikace je zobrazená tady:

The application overview page

Kliknutím na Nákupy v aplikaci můžete vytvářet nebo upravovat produkty k prodeji. Tento snímek obrazovky ukazuje ukázkovou aplikaci s několika přidanými produkty:

The sample app with several products already added

Proces přidání nových produktů má dva kroky:

  1. Zvolte typ produktu: Choose the product type
  2. Zadejte atributy produktu, včetně ID produktu, cenové úrovně a lokalizovaných popisů: Entering the products attributes

Pole požadovaná pro každý produkt nákupu v aplikaci jsou popsaná níže:

Název odkazu

Název odkazu se nezobrazuje uživatelům; je určená pro interní použití a zobrazuje se pouze v Připojení iTunes.

Formát ID produktu

Identifikátor produktu může obsahovat pouze alfanumerické znaky (A-Z,a-z,0-9), podtržítko (_) a tečka (.). I když pro identifikátory můžete použít libovolný řetězec, Apple doporučuje reverzní formát DNS. Například ukázková aplikace používá tento identifikátor sady:

com.xamarin.storekit.testing

Proto by konvence identifikace produktů nákupu v aplikaci byla následující:

com.xamarin.storekit.testing.consume5credits
com.xamarin.storekit.testing.consume10credits
com.xamarin.storekit.testing.sepia
com.xamarin.storekit.testing.greyscale

Tato konvence vytváření názvů se nevynucuje, jednoduše doporučení, které vám pomůže se správou vašich produktů. Identifikátory produktů nesouvisejí s identifikátorem sady prostředků a nemusí začínat stejným řetězcem, i když následují stejnou konvenci reverzního DNS. Stále by bylo platné používat identifikátory, jako je photo_product_greyscale (i když ho Apple nedoporučuje).

ID produktu se uživatelům nezobrazuje, ale slouží k odkazu na produkt v kódu vaší aplikace.

Typ produktu

K dispozici je pět typů produktů pro nákup v aplikaci, které můžete nabídnout:

  1. Spotřební – věci, které jsou "využity", například v herní měně, kterou hráč může utratit. Pokud uživatel provede zálohování nebo obnovení nebo jinak má své zařízení aktualizované, spotřební transakce se neobnoví také (což by hráči efektivně poskytlo stejnou výhodu znovu). Kód aplikace musí být nutné zadat "spotřební položku" ihned po dokončení transakce.
  2. Nepouživatelné – produkty, které uživatel "vlastní" po zakoupení, jako je vydání digitálního časopisu nebo herní úroveň.
  3. Automaticky obnovitelná předplatná – stejně jako skutečné předplatné časopisu, na konci období předplatného apple automaticky účtuje zákazníka znovu a prodlužuje období předplatného navždy nebo dokud ho zákazník explicitně nezruší. Toto je upřednostňovaný způsob platby pro aplikace Newsstand (ve skutečnosti aplikace musí podporovat tento způsob platby, aby byly schváleny pro distribuci Newsstand).
  4. Bezplatné předplatné – Dá se nabízet jenom v aplikacích s podporou Newsstand a umožňuje zákazníkovi přístup k obsahu předplatného na všech svých zařízeních. Platnost bezplatných předplatných nikdy nevyprší.
  5. Neprodlužující se předplatné – Mělo by se použít k prodeji časově omezeného přístupu ke statickému obsahu, například k měsíčnímu přístupu k archivu fotek.

Tento dokument se v současné době zabývá pouze prvními dvěma typy produktů (spotřební a spotřební).

Cenové úrovně

App Store neumožňuje zvolit libovolnou cenu pro vaše produkty – Apple poskytuje pevné cenové úrovně, ze které si můžete vybrat. Ceny jsou pevné v každé měně a Apple si vyhrazuje právo upravit relativní ceny (například po trvalé změně relativního směnného kurzu mezi určitou měnou a americkým dolarem).

Apple poskytuje cenovou matici, která vám pomůže vybrat správnou úroveň pro požadovanou měnu nebo cenu. Zde je uveden výňatek z cenové matice (srpen 2012):

An excerpt of the price matrix August 2012

V době psaní (červen 2013) existuje 87 úrovní od 0,99 USD do 999,99 USD. Cenová matice zobrazuje cenu, kterou budou vaši zákazníci platit, a také částku, kterou obdržíte od společnosti Apple – jedná se o nižší 30% poplatek a také všechny místní daně, které jsou potřeba shromáždit (všimněte si, že americký a kanadští prodejci obdrží 70c za produkt 99c, zatímco australští prodejci obdrží pouze 63c z důvodu daně ze zboží a služeb, které jsou účtovány při prodejní ceně).

Ceny produktu je možné kdykoli aktualizovat, včetně plánovaných změn cen, které se projeví v budoucím datu. Tento snímek obrazovky ukazuje, jak se přidá změna ceny v budoucnu – cena se dočasně mění z úrovně 1 na vrstvu 3 pouze za měsíc září:

A future-dated price change where the price is being temporarily changed from tier 1 to tier 3 for the month of September only

Bezplatné produkty nejsou podporovány.

I když Apple pro aplikace Newsstand nabízí speciální možnost bezplatného předplatného, není možné nastavit nulovou (bezplatnou) cenu pro žádné jiné typy nákupů v aplikaci. I když můžete upravovat (tj. nižší) ceny prodejních propagačních akcí, nemůžete nákupy v aplikaci provádět "zdarma" prostřednictvím iTunes Připojení.

Lokalizace

V iTunes Připojení můžete zadat jiný text názvu a popisu pro libovolný počet podporovaných jazyků. Každý jazyk můžete přidat nebo upravit pomocí místní nabídky:

Each language can be added/edited in via a popup

Když ve své aplikaci zobrazíte informace o produktu, lokalizovaný text je k dispozici k zobrazení přes StoreKit. Zobrazení měny musí být také lokalizováno, aby se zobrazil správný symbol a formátování desetinných míst – toto formátování je popsáno dále v dokumentu.

App Store – recenze

Stejné jako aplikace – každý produkt před tím, než bude moct přejít na prodej, společnost Apple zkontroluje. Produkty můžou být odmítnuty za nevhodný obsah v názvu nebo popisu nebo se společnost Apple může rozhodnout, že jste zvolili nesprávný typ produktu (např. vytvořili jste problém s knihou nebo časopisem, ale použili jste typ spotřebního výrobku). Recenze produktů můžou trvat, dokud se aplikace nekontroluje.

Při prvním odeslání aplikace s povoleným nákupem v aplikaci (bez ohledu na to, jestli se jedná o novou aplikaci, nebo se funkce přidala do existující aplikace), musíte také zvolit některé produkty, které se mají odeslat. Na portálu Připojení iTunes se zobrazí výzva, abyste to udělali, jak je znázorněno na tomto snímku obrazovky:

The iTunes Connect portal will prompt you to submit some products as well

Aplikace a nákupy v aplikaci se budou kontrolovat společně, aby se všechny schvalovaly najednou (aby aplikace nepřešla do obchodu bez schválených produktů!).

Po schválení vaší první verze s funkcí nákupu v aplikaci můžete kdykoli přidat další produkty a odeslat je ke kontrole. Můžete také odeslat novou verzi společně s konkrétními produkty nákupu v aplikaci pomocí stránky Podrobnosti o verzi, jak navrhuje výzva.

Další informace najdete v pokynech pro kontrolu App Storu.

Část 2 – Přehled sady Store Kit a retreiving informací o produktu