Přihlaste se pomocí průvodce Amazon Začínáme pro Android
Přihlaste se pomocí Amazonu: Příručka Začínáme pro Android
Copyright © 2016 Amazon.com, Inc. nebo její přidružené společnosti. Všechna práva vyhrazena. Amazon a logo Amazon jsou ochranné známky společnosti Amazon.com, Inc. nebo jejích přidružených společností. Všechny ostatní ochranné známky, které společnost Amazon nevlastní, jsou majetkem příslušných vlastníků.
Začínáme pro Android
V této příručce vám ukážeme, jak přidat přihlášení pomocí Amazonu do vaší aplikace pro Android. Po dokončení této příručky byste měli mít ve své aplikaci funkční tlačítko Přihlásit se Amazonem, které umožní uživatelům přihlásit se pomocí svých přihlašovacích údajů Amazon.
Instalace vývojářských nástrojů pro Android
The Login with Amazon SDK for Android will help you add Login with Amazon to your Android application. Doporučujeme použít přihlášení pomocí Amazon SDK pro Android od developer.amazon.com se Android Studio. Můžete však také použít modul Eclipse s modulem ADT. Postup, jak nainstalovat Android Studio a jak nastavit sadu Android SDK, najdete v části Získejte Android SDK na developer.android.com.
Když je nainstalována sada Android SDK, najděte Správce SDK aplikace v instalaci systému Android. Chcete-li vyvinout pro přihlášení pomocí Amazonu, musíte použít SDK Manager k instalaci platformy SDK pro Android 2.2 nebo vyšší (API verze 8). Vidět Přidávání balíčků SDK na developer.android.com pro více informací o používání SDK
Po instalaci sady SDK nastavte virtuální zařízení Android (AVD) pro spouštění vašich aplikací. Vidět Řízení Virtuální zařízení na webu developer.android.com najdete pokyny k nastavení virtuálního zařízení.
Když je nastaveno vaše vývojové prostředí, můžete Nainstalujte si Přihlášení pomocí Amazon SDK pro Android or Spusťte Sample App, jak je popsáno níže.
Nainstalujte si Přihlášení pomocí Amazon SDK pro Android
Přihlášení pomocí sady Amazon SDK pro Android je dodáváno ve dvou balíčcích. První obsahuje knihovnu Android a podpůrnou dokumentaci. Druhý obsahuje jakoampaplikace, která umožňuje uživateli přihlásit se a zobrazit jeho profesionályfile data.
Pokud ještě nemáte nainstalovanou sadu Android SDK nebo vývojové nástroje Android, podívejte se na Instalace vývojářské nástroje pro Android sekce výše.
- Stáhnout zip a extrahujte files do adresáře na vašem pevném disku.
Měli byste vidět a doc a a lib podadresář. - OTEVŘENO doc / index.html na view přihlášení pomocí Amazon Android API
- Vidět Nainstalujte si přihlášení pomocí knihovny Amazon, pokyny, jak přidat knihovnu a dokumentaci do systému Android
Když je nainstalováno přihlášení pomocí Amazon SDK pro Android, můžete Vytvořte nové přihlášení pomocí Amazonu Projekt, po Registrace pomocí přihlášení pomocí Amazonu .
Spusťte Sample App
Chcete -li spustit samppro aplikaci importujte soubor sampvložte do pracovního prostoru AndroidStudio (pokud používáte Eclipse, musíte také do pracovního prostoru přidat vlastní úložiště klíčů pro ladění. Přidejte vlastní ladění Úložiště klíčů v Eclipse část níže). Klíč API, který sampPoužití aplikace vyžaduje, aby pracovní prostor používal úložiště klíčů, které je dodáváno sample. Pokud není nainstalováno vlastní úložiště klíčů, uživatelé se nebudou moci přihlásit pomocí sample. Úložiště klíčů bude vyzvednuto automaticky, pokud používáte AndroidStudio.
- Stáhnout SampleLoginWithAmazonAppForAndroid-src.zip a extrahujte files do adresáře na vašem hard
- Spusťte Android Studio a vyberte Otevřete existující projekt Android Studio
- Přejděte na SampleLoginWithAmazonApp adresář získaný po rozbalení staženého zipu file v kroku
- z Vytvořit menu, klikněte Vytvořte projekt, a počkejte, až projekt proběhne
- z Běh menu, klikněte Běh a poté klepněte na SampleLoginWithAmazonApp.
- Vyberte emulátor nebo připojené zařízení Android a klikněte Běh.
Přidejte úložiště vlastních ladicích klíčů v Eclipse
Pokud používáte Eclipse, přidejte vlastní debugovací úložiště klíčů podle následujících pokynů:
- V Předvolby dialog, vyberte Android a Vytvořit.
- Vedle Zvyk Ladit úložiště klíčů, klikněte Prohlížet.
- Přejděte na sampvyberte adresář aplikace a vyberte 3p.stejna klíčůa poté klepněte na OK.
Registrace pomocí přihlášení pomocí Amazonu
Než budete moci použít přihlášení s Amazonem na a webna webu nebo v mobilní aplikaci, musíte aplikaci zaregistrovat pomocí Přihlášení u Amazonu. Vaše aplikace Login with Amazon je registrace, která obsahuje základní informace o vaší firmě a informace o každé z nich webweb nebo mobilní aplikaci, kterou vytvoříte a která podporuje přihlášení přes Amazon. Tyto obchodní informace se uživatelům zobrazí pokaždé, když na vašem účtu použijí přihlášení přes Amazon webweb nebo mobilní aplikace. Uživatelé uvidí název vaší aplikace, vaše logo a odkaz na vaše zásady ochrany osobních údajů. Tyto kroky ukazují, jak zaregistrovat aplikaci Login with Amazon a přidat k tomuto účtu aplikaci pro Android.
Viz následující témata:
- Zaregistrujte si své přihlášení pomocí aplikace Amazon
- Zaregistrujte si aplikaci pro Android
- Přidejte aplikaci pro Android pro Amazon Appstore
- Přidejte aplikaci pro Android bez Appstore
- Podpisy aplikací pro Android a klíče API
- Určení podpisu aplikace pro Android
- Načítání klíče Android API
Zaregistrujte si své přihlášení pomocí aplikace Amazon
- Přejít na https://login.amazon.com.
- Pokud jste se již dříve přihlásili k přihlášení pomocí Amazonu, klikněte na Konzole aplikace. V opačném případě klikněte Zaregistrujte se. Budete přesměrováni na Seller Central, která zpracovává registraci aplikace pro přihlášení pomocí Pokud používáte Seller Central poprvé, budete požádáni o založení účtu Seller Central.
- Klikněte Zaregistrujte novou aplikaci. The Zaregistrujte svou aplikaci objeví se formulář:
a. V Zaregistrujte svou aplikaci formulář, zadejte a Jméno a a Popis pro vaši aplikaci.
The Jméno je jméno zobrazené na obrazovce souhlasu, když uživatelé souhlasí se sdílením informací s vaší aplikací. Tento název platí pro Android, iOS a webverze stránek vaší aplikace.
b. Zadejte a Oznámení o ochraně osobních údajů URL pro vaši aplikaci
The Oznámení o ochraně osobních údajů URL je umístění zásad ochrany osobních údajů vaší společnosti nebo aplikace (napřample, http://www.example.com/privacy.html). Tento odkaz se uživatelům zobrazí na obrazovce souhlasu.
c. Pokud chcete přidat a Obrázek loga pro vaši aplikaci klikněte na Prohlížet a vyhledejte příslušný obrázek.
Toto logo se zobrazuje na přihlašovací a souhlasné obrazovce, aby reprezentovalo vaši firmu nebo webstránky. Logo bude zmenšeno na 50 pixelů na výšku, pokud je vyšší než 50 pixelů; na šířku loga není žádné omezení - Klikněte Uložit. Vaše sampregistrace by měla vypadat takto:
Po uložení základních nastavení aplikace můžete přidat konkrétní nastavení webweby a mobilní aplikace, které budou používat toto přihlášení pomocí účtu Amazon.
Zaregistrujte si aplikaci pro Android
Chcete-li zaregistrovat aplikaci pro Android, máte možnost zaregistrovat aplikaci prostřednictvím obchodu Amazon Appstore (Přidejte aplikaci pro Android pro Amazon Appstore, str. 8) nebo přímo přihlášením pomocí Amazonu (Přidejte Android Aplikace bez Appstore, str. 9). Když je vaše aplikace zaregistrována, budete mít přístup ke klíči API, který vaší aplikaci umožní přístup k autorizační službě Přihlášení pomocí Amazonu.
Poznámka: Pokud plánujete používat Amazon Device Messaging ve své aplikaci pro Android, kontaktujte prosím lwa- podpora@amazon.com s:
- E-mailová adresa účtu Amazon, který jste použili k registraci pro přihlášení pomocí Amazonu.
- E-mailová adresa účtu Amazon, který jste použili k registraci do obchodu Amazon Appstore (pokud se liší).
- Jméno vašeho účtu Centrála prodejce. (V Centru prodejce klikněte na Nastavení> Informace o účtu> Informace o prodejcia použijte Zobrazované jméno).
- Název vašeho vývojářského účtu Amazon Appstore. (Na webu distribuce mobilních aplikací klikněte na Nastavení > Společnost Profile a používat Název vývojáře nebo název společnosti).
Přidejte aplikaci pro Android pro Amazon Appstore
Následující kroky přidají aplikaci Amazon Appstore do vašeho přihlášení pomocí účtu Amazon:
- Na obrazovce Aplikace klikněte na Nastavení systému Android. Pokud již máte zaregistrovanou aplikaci pro Android, podívejte se na Přidat klíč API tlačítko v Nastavení systému Android
The Podrobnosti o aplikaci pro Android objeví se formulář: - Vybrat Ano v odpovědi na otázku „Je tato aplikace distribuována prostřednictvím obchodu Amazon Appstore?“
- Zadejte Označení vaší aplikace pro Android. Toto nemusí být oficiální název vaší aplikace. Jednoduše identifikuje tuto konkrétní aplikaci pro Android mezi aplikacemi a webstránky registrované k vašemu přihlášení pomocí aplikace Amazon.
- Přidejte svůj ID Amazon Appstore.
- Pokud jste svou aplikaci podepsali sami, přidejte informace o vlastním podpisu. To vám umožní získat klíč API během vývoje bez přímého použití Appstore:
a. Pokud se vaše aplikace nepodepisuje prostřednictvím obchodu Amazon Appstore, vyberte Ano v odpovědi na otázku „Je tato aplikace podepsána sama sebou?“
The Podrobnosti o aplikaci pro Android formulář se rozbalí:
b. Zadejte svůj Název balíčku.
To se musí shodovat s názvem balíčku vašeho projektu Android. Chcete-li zjistit název balíčku svého projektu Android, otevřete projekt ve vašem výběru vývojářského nástroje pro Android.
OTEVŘENO AndroidManifest.XML v Průzkumníku balíčků a vyberte Manifest záložka. První položka je název balíčku.
c. Zadejte aplikaci Podpis.
Toto je hashovací hodnota SHA-256 použitá k ověření vaší aplikace. Podpis musí být ve formě 32 hexadecimálních párů oddělených dvojtečkami (napřampten: 01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01:23:45:67:89:ab:cd:ef:01: 3:45:67:89:a b:cd:ef). Vidět Podpisy aplikací pro Android a klíče API pro kroky, které můžete použít k extrahování podpisu z vašeho projektu. - Klikněte Uložit.
Pokud různé verze vaší aplikace mají různé podpisy nebo názvy balíčků, například pro jednu nebo více testovacích verzí a produkční verzi, vyžaduje každá verze svůj vlastní klíč API. Z Nastavení systému Android své aplikace, klikněte na Přidat klíč API tlačítko pro vytvoření dalších klíčů pro vaši aplikaci (jeden pro každou verzi).
Podpisy aplikací pro Android a klíče API
Podpis aplikace je hodnota hash SHA-256, která se použije na každou aplikaci pro Android, když je vytvořena. Amazon používá podpis aplikace k vytvoření vašeho klíče API. Klíč API umožňuje službám Amazon rozpoznat vaši aplikaci. Pokud k podepsání aplikace používáte Amazon Appstore, je klíč API poskytován automaticky. Pokud nepoužíváte Amazon Appstore, budete muset svůj klíč API spravovat ručně.
Podpisy aplikací jsou uloženy v úložišti klíčů. Obecně platí, že pro aplikace pro Android existuje úložiště klíčů ladění a úložiště klíčů vydání. Úložiště klíčů pro ladění je vytvořeno pluginem Android Development Tools pro Eclipse a používá se ve výchozím nastavení. Umístění úložiště ladicích klíčů v Eclipse najdete kliknutím Oknoa poté výběrem Předvolby> Android> Sestavit. Z této obrazovky můžete také přidat svůj vlastní debug keystore. Pro Android Studio z Vytvořit menu, vyberte Upravit typy sestavení, pak přejděte na Podepisování na kartě a vyhledejte úložiště klíčů ladění v souboru Obchod File pole.
Úložiště klíčů pro vydání se obvykle vytváří při exportu aplikace pro Android a vytvoření podepsaného APK file.
Pokud během procesu exportu vytváříte úložiště klíčů nového vydání, vyberete jeho umístění. Podle
ve výchozím nastavení bude umístěn na stejném místě jako výchozí ladicí úložiště KeyStore.
Pokud jste svou aplikaci zaregistrovali pomocí ladicího podpisu během vývoje, budete muset do aplikace přidat nové nastavení systému Android, až budete připraveni aplikaci vydat. Nové nastavení aplikace musí používat podpis z úložiště klíčů vydání.
Vidět Podepisování vašich aplikací na developer.android.com pro více informací.
Určete podpis aplikace pro Android
- Pokud máte podepsaný APK file:
a. Rozbalte APK file a extrahovat CERT.RSA. (V případě potřeby můžete příponu APK přejmenovat na ZIP).
b. Z příkazového řádku spusťte:keytool -printcert -file CERT.RSA Keytoolis se nachází v zásobník adresář vaší instalace Java.
- Pokud máte úložiště klíčů file:
a. Z příkazového řádku spusťte:keytool -list -v -alias -prodejna klíčůfilejméno> Keytool se nachází v adresáři bin vaší instalace Java. Alias je název klíče použitého k podepsání aplikace.
b. Zadejte heslo klíče a stiskněte Vstupte. - Pod Otisky certifikátu, zkopírujte SHA256 hodnota.
Načíst klíč Android API
Když jste zaregistrovali nastavení systému Android a zadali podpis aplikace, můžete klíč API získat z registrační stránky pro aplikaci Přihlášení pomocí aplikace Amazon. Tento klíč API budete muset umístit do souboru file ve vašem projektu Android. Dokud to neuděláte, aplikace nebude autorizována ke komunikaci s autorizační službou Přihlášení pomocí Amazonu.
- Přejít na https://login.amazon.com.
- Klikněte Konzole aplikace.
- V Aplikace pole vlevo vyberte svůj
- Najděte svou aplikaci pro Android pod Nastavení systému Android (Pokud jste dosud nezaregistrovali aplikaci pro Android, viz Přidejte aplikaci pro Android pro Amazon Appstore).
- Klikněte Generovat klíčovou hodnotu API. Vyskakovací okno zobrazí váš klíč API. Chcete-li klíč zkopírovat, klikněte na Vyberte Vše vyberte celý
Poznámka: Hodnota klíče API je částečně založena na době, kdy je vygenerována. Následné generované klíčové hodnoty API se tedy mohou lišit od originálu. Ve své aplikaci můžete použít kteroukoli z těchto klíčových hodnot API, protože jsou všechny platné. - Vidět Přidejte svůj klíč API do svého projektu pokyny k přidání klíče API do systému Android
Vytvoření přihlášení pomocí projektu Amazon
V této části se naučíte, jak vytvořit nový projekt Android pro přihlášení pomocí Amazonu, nakonfigurovat projekt a přidat do projektu kód pro přihlášení uživatele pomocí přihlášení pomocí Amazonu. Popíšeme kroky pro Android Studio, ale analogické kroky můžete použít na jakýkoli vývojový nástroj IDE nebo Android podle vašeho výběru.
Viz následující témata:
- Vytvořte nové přihlášení pomocí projektu Amazon
- Nainstalujte si přihlášení pomocí knihovny Amazon
- Povolte Content Assist pro přihlášení pomocí Amazon Library
- Nastavte pro svou aplikaci síťová oprávnění
- Přidejte svůj klíč API do svého projektu
- Odstraňte SampLe App Custom Debug Keystore
- Zpracování změn konfigurace pro vaši aktivitu
- Přidejte do projektu autorizační aktivitu
- Přidejte si do aplikace přihlášení pomocí tlačítka Amazon
- Ovládejte přihlašovací tlačítko a získejte Profile Data
- Při přihlášení zkontrolujte přihlášení uživatele
- Vymažte stav autorizace a odhlaste uživatele
- Synchronně volejte metody správce autorizací Amazon
Vytvořte nové přihlášení pomocí projektu Amazon
Pokud ještě nemáte projekt aplikace pro používání přihlášení pomocí Amazonu, vytvořte jej podle níže uvedených pokynů. Pokud máte existující aplikaci, přejděte na Nainstalujte si přihlášení pomocí knihovny Amazon .
- Zahájit Nástroj pro vývoj Android.
- z File menu, vyberte Nový a Projekt.
- Zadejte číslo Název aplikace a Název společnosti pro vaše
- Zadejte Aplikace a název společnosti odpovídá názvu balíčku, který jste vybrali při registraci aplikace pomocí Přihlášení na Amazonu.
Pokud jste svoji aplikaci ještě nezaregistrovali, zvolte a Název balíčku a poté postupujte podle pokynů v Registrace pomocí přihlášení pomocí Amazonu po vytvoření projektu. Pokud se název balíčku vaší aplikace neshoduje s registrovaným názvem balíčku, vaše přihlášení pomocí volání Amazon nebude úspěšné. - Vyberte a Minimální požadovaná sada SDK rozhraní API 8: Android 2 (Froyo) nebo vyšší a klikněte Další.
- Vyberte typ aktivity, kterou chcete vytvořit, a klikněte Další.
- Vyplňte příslušné podrobnosti a klikněte Dokončit.
Nyní budete mít ve svém pracovním prostoru nový projekt, pomocí kterého můžete volat přihlášení pomocí Amazonu.
Nainstalujte si přihlášení pomocí knihovny Amazon
Pokud jste si ještě nestáhli přihlášení pomocí Amazon SDK pro Android, přečtěte si Nainstalujte přihlášení pomocí Amazon SDK pro Android (str. 4).
- S otevřeným projektem v Android Developer Tools, v Průzkumník projektu, klepněte pravým tlačítkem myši na Projekt.
- Pokud se volá složka libs již není k dispozici, vytvořte
- Zkopírujte přihlaste se pomocí amazon-sdk.jar file z File Systéma poté jej vložte do souboru libs adresář pod vaším projektem / aplikací.
- Klikněte pravým tlačítkem přihlaste se pomocí amazon-sdk.jara zkontrolujte Přidat jako knihovnu
Povolte Content Assist pro přihlášení pomocí Amazon Library v Eclipse
Povolení podpory obsahu Eclipse v projektu Android vyžaduje použití a .vlastnosti file. Další informace o asistenci obsahu naleznete v části Asistent obsahu / kódu onhelp.eclipse.org.
Povolení podpory obsahu Eclipse v projektu Android vyžaduje použití a .vlastnosti file. Další informace o asistenci obsahu naleznete v části Asistent obsahu / kódu onhelp.eclipse.org.
- In Průzkumník Windows, přejděte na dokumenty složku pro přihlášení pomocí Amazon SDK pro Android a zkopírujte složku do složky
- S otevřeným projektem přejděte na Průzkumník balíčků a vyberte libs Klikněte Upravit z hlavní nabídky a vyberte Pasta. Nyní byste měli mít libs \ docs adresář.
- Vyberte libs Klikněte File z hlavní nabídky a vyberte Nový aFile.
- V Nový File dialog, zadejte login-with-amazon-sdk.jar.properties a klikněte Dokončit.
- Zatmění by se mělo otevřít login-with-amazon-sdk.jar.properties v textovém editoru. V textovém editoru přidejte následující řádek do file:
doc = dokumenty - z File menu, klikněte Uložit.
- Aby se změny projevily, možná budete muset restartovat Eclipse
Nastavte pro svou aplikaci síťová oprávnění
Aby vaše aplikace mohla používat přihlášení pomocí Amazonu, musí mít přístup k internetu a přístup k informacím o stavu sítě. Vaše aplikace musí tato oprávnění uplatnit ve vašem manifestu pro Android, pokud se tak již nestalo.
POZNÁMKA: Níže uvedené kroky postupu jsou specifické pro přidání oprávnění v Eclipse. Pokud používáte Android Studio nebo jiné IDE, můžete všechny níže očíslované kroky přeskočit. Místo toho zkopírujte řádky kódu zobrazené pod snímkem obrazovky a vložte je do AndroidManifest.xml file, mimo aplikační blok.
- In Balík Badatel, dvakrát klikněte xml.
- Na Oprávnění klepněte na kartu Přidat.
- Vybrat Používá oprávnění a klikněte OK.
- Napravo od Oprávnění, najít Atributy pro použití povolení
- V Jméno , zadejte povolení. INTERNET nebo jej vyberte z rozbalovací nabídky.
- Na Oprávnění klepněte na kartu Přidat
- Vybrat Používá oprávnění a klikněte OK.
- V Jméno , zadejte oprávnění.ACCESS_NETWORK_STATE nebo jej vyberte z rozbalovací nabídky
- z File menu, klikněte Uložit.
Vaše oprávnění manifestu by nyní měla mít následující hodnoty:
V AndroidManifest.xml Na kartě byste nyní měli vidět tyto položky pod prvkem manifestu:
Přidejte svůj klíč API do svého projektu
Když zaregistrujete svou aplikaci pro Android pomocí Přihlášení na Amazonu, bude vám přidělen klíč API. Jedná se o identifikátor, který správce autorizace Amazon použije k identifikaci vaší aplikace k autorizační službě Přihlášení pomocí Amazonu. Pokud k podpisu aplikace používáte Amazon Appstore, Appstore automaticky poskytne klíč API. Pokud nepoužíváte Amazon Appstore, Amazon Authorization Manager načte tuto hodnotu za běhu z api_key.txt file v aktiva adresář.
- Pokud svůj klíč API ještě nemáte, postupujte podle pokynů v Načíst klíč Android API (str. 11).
- S otevřeným projektem ADT z File menu, klikněte Nový a vyberte Text bez názvu File. Nyní byste měli mít okno editoru pro text file jmenoval Bez názvu 1. Přidejte do textu svůj klíč API
- z File menu, klikněte Uložit jako.
- V Uložit jako v dialogovém okně vyberte aktiva adresář vašeho projektu jako nadřazená složka. Pro File jméno, zadejte txt.
Odstraňte SampLe App Custom Debug Keystore
POZNÁMKA: Tento krok je vyžadován pouze v případě, že používáte Eclipse; pokud používáte Android Studio, tuto část přeskočte.
Pokud jste si nainstalovali přihlášení pomocí Amazonu pro Android sampPokud do stejného pracovního prostoru používáte aplikaci pro Android, můžete mít pro pracovní prostor nastavenou vlastní sadu klíčů pro ladění. Chcete -li použít svůj vlastní klíč API, musíte vymazat vlastní úložiště klíčů ladění.
- V hlavní nabídce klikněte na Okno a vyberte Předvolby.
- V Předvolby dialog, vyberte Android a Vytvořit.
- Vyčistěte Zvyk ladění úložiště klíčů
- Klikněte OK.
Zpracování změn konfigurace pro vaši aktivitu
Pokud uživatel během přihlášení změní orientaci obrazovky nebo změní stav klávesnice zařízení, vyzve k restartování aktuální aktivity. Tento restart neočekávaně zavře přihlašovací obrazovku. Chcete-li tomu zabránit, měli byste nastavit aktivitu, která používá metodu autorizace k ručnímu zpracování těchto změn konfigurace. Tím se zabrání restartu aktivity.
- In Balík Badatel, dvakrát klikněte xml.
- V Aplikace vyhledejte aktivitu, která bude zpracovávat přihlášení pomocí Amazonu (napřample, Hlavní aktivita).
- Přidejte následující atribut k aktivitě, kterou jste lokalizovali v kroku 2:
android: configChanges = ”klávesnice | keyboardHidden | orientace” Nebo pro API 13 nebo vyšší:
android: configChanges = ”klávesnice | keyboardHidden | orientace | screenSize” - z File menu, klikněte Uložit
Nyní, když dojde ke změně orientace klávesnice nebo zařízení, Android zavolá na onConfigurationChanged metoda pro vaši aktivitu. Tuto funkci nemusíte implementovat, pokud neexistuje aspekt těchto změn konfigurace, které chcete pro vaši aplikaci zpracovat
Když uživatel klikne na tlačítko Přihlásit se pomocí Amazonu, API spustí a web prohlížeč, aby uživateli představil přihlašovací a souhlasnou stránku. Aby tato aktivita prohlížeče fungovala, musíte do manifestu přidat AuthorizationActivity.
- In Balík Badatel, dvakrát klikněte xml.
- V Aplikace sekci, přidejte následující kód a nahraďte „com.example.app “s názvem vašeho balíčku pro tuto aplikaci:
<activity android:name=
„Com.amazon.identity.auth.device.authorization.AuthorizationActivity“ android: theme = ”@ android: style / Theme.NoDisplay” android: allowTaskReparenting = ”true” android: launchMode = ”singleTask”>
<action android:name=”android.intent.action.VIEW“/>
<data
android: host = ”com.example.app ”android: schéma =” amzn ” />
vaše aplikace. V této části jsou uvedeny kroky ke stažení oficiálního přihlášení pomocí obrázku Amazon a jeho spárování s obrázkem Android ImageButton.
- Přidejte do své aplikace standardní ImageButton.
Další informace o tlačítkách Android a třídě ImageButton najdete v tématu Tlačítka na developer.android.com. - Dejte svému tlačítku ID.
V tlačítkové deklaraci XML nastavte atribut android: id na @+id/login_with_amazon. Za exampten:Android: id = ”@ + id / login_with_amazon” - Vyberte obrázek tlačítka.
Konzultujte naše Přihlášení přes Amazon Pokyny pro styl pro seznam tlačítek, která můžete použít ve své aplikaci. Stáhněte si kopii souboru LWA_Android.zip file. Extrahujte kopii preferovaného tlačítka pro každou hustotu obrazovky, kterou vaše aplikace podporuje (xxhdpi, xhdpi, hdpi, mdpi nebo tvdpi). Další informace o podpoře více hustot obrazovky v systému Android najdete v tématu Alternativní rozvržení v tématu „Podpora více obrazovek“ na webu ondeveloper.android.com. - Zkopírujte příslušný obrázek tlačítka filek vašemu projektu.
Pro každou podporovanou hustotu obrazovky (xhdpi, hdpi, mdpi nebo ldpi) zkopírujte stažené tlačítko do res / drawable adresář pro danou hustotu obrazovky. - Deklarujte obrázek tlačítka.
V deklaraci XML tlačítka nastavte atribut android: src na název tlačítka, které jste vybrali. Za exampten:Android: src = ”@ drawable / btnlwa_gold_loginwithamazon.png” 6. Načtěte svou aplikaci a ověřte, zda má tlačítko nyní obrázek Přihlásit se pomocí Amazonu. Měli byste ověřit, zda se tlačítko zobrazuje správně pro každou podporovanou hustotu obrazovky.
Tato část vysvětluje, jak volat autorizaci a getProfile Rozhraní API pro přihlášení uživatele a získání jeho profesionálafile data. To zahrnuje vytvoření posluchače onClick pro vaše tlačítko Přihlásit se pomocí Amazon v metodě onCreate vaší aplikace.
- Přidejte si do projektu Android přihlášení pomocí Amazonu. Vidět Nainstalujte si přihlášení pomocí knihovny Amazon .
- Importujte přihlášení pomocí rozhraní Amazon API do svého zdroje
Chcete -li importovat přihlášení pomocí Amazon API, přidejte do svého zdroje následující příkazy k importu file:importovat com.amazon.identity.auth.device.AuthError; import
com.amazon.identity.auth.device.authorization.api.
AmazonAuthorizationManager; import
com.amazon.identity.auth.device.authorization.api. AuthorizationListener; importujte com.amazon.identity.auth.device.authorization.api.AuthzConstants; - Inicializovat Správce AmazonAuthorization.
Budete muset deklarovat Správce AmazonAuthorization proměnnou a vytvořte novou instanci třídy. Vytvoření nové instance vyžaduje pouze váš aktuální kontext aplikace a prázdný balíček. Nejlepší místo pro inicializaci Správce AmazonAuthorization je v onCreate způsob vaší aktivity. Za exampten: - Vytvořte AuthorizeLiistener.
AuthorizeListener implementuje rozhraní AuthorizatioinListener a zpracuje výsledek povolit volání. Obsahuje tři metody: oinSuccess, onError, a onCanceil. Každá metoda přijímá buď balíček, nebo balíček AuthError objekt.soukromá třída AuthorizeListener implementuje AuthorizationListener {
/ * Autorizace byla úspěšně dokončena. * /
@ Přepis
public void onSuccess (odpověď balíčku) {
}
/ * Při pokusu o autorizaci aplikace došlo k chybě.
*/
@ Přepis
public void onError (AuthError ae) {
}
/ * Autorizace byla zrušena před dokončením. * /
@ Přepis
public void onCancel (příčina balíčku) {
}
} - Volání AmazonAuthorizationManager. Autorizovat.
V onClick handler pro vaše přihlášení pomocí tlačítka Amazon, zavolejte autorizovat a vyzvěte uživatele k přihlášení a autorizaci vaší aplikace.
Tato metoda je zodpovědná za autorizaci zákazníka jedním z následujících způsobů:- Přepne do systémového prohlížeče a umožní zákazníkovi přihlásit se a souhlasit s požadovaným
- Přepne na web view v zabezpečeném kontextu nechat zákazníka přihlásit se a požadovat souhlas
Tento zabezpečený kontext pro #2 je v současné době k dispozici jako aplikace Amazon Shopping na zařízeních Android. Zařízení vytvořená na Amazonu s operačním systémem Fire OS (napřample Kindle Fire, Fire Phone a Fire TV) vždy použijte tuto možnost, i když v zařízení není žádná aplikace Amazon Shopping. Z tohoto důvodu, pokud je zákazník již přihlášen do aplikace Amazon Shopping, toto API přeskočí přihlašovací stránku, což vede k Jednotné přihlášení zkušenost pro zákazníka.
Když je vaše aplikace autorizována, je autorizována pro jeden nebo více datových souborů známých jako rozsahy. Prvním parametrem je řada oborů, které zahrnují uživatelská data, která požadujete od přihlášení pomocí Amazonu. Když se uživatel poprvé přihlásí do vaší aplikace, zobrazí se mu seznam požadovaných dat a žádostí o schválení. Přihlášení pomocí Amazonu aktuálně podporuje tři obory: profile, který obsahuje uživatelské jméno, e -mailovou adresu a ID účtu Amazon; profile:uživatelské ID, který obsahuje pouze ID účtu Amazon; a poštovní směrovací číslo, který obsahuje poštovní směrovací číslo uživatele.
Nejlepší způsob volání autorizace je asynchronně, takže nemusíte blokovat vlákno uživatelského rozhraní nebo vytvářet vlastní pracovní vlákno. Zavolat autorizovat synchronně, předat objekt, který podporuje Rozhraní AuthorizationListener jako poslední parametr:soukromý AmazonAuthorizationManager mAuthManager; @ Přepis
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
mAuthManager = nový AmazonAuthorizationManager (tento, Bundle.EMPTY);// Najděte tlačítko s ID login_with_amazon
// a nastavit obsluhu kliknutí
mLoginButton = (tlačítko) najítViewById (R.id.login_with_amazon);
mLoginButton.setOnClickListener (nový OnClickListener () {
@ Přepis
veřejná neplatnost onClick (View v) {
mAuthManager.authorize (
nový řetězec [] {“profile","poštovní směrovací číslo"},
Bundle.EMPTY, nový AuthorizeListener ());
}
});
} - Vytvořte a ProfilePosluchač.
ProfilePosluchač je náš název pro třídu, která implementuje APIListener rozhraní a zpracuje výsledek getProfile volání. APIListener obsahuje dvě metody: naÚspěch a onError (nepodporuje na Zrušit protože neexistuje způsob, jak zrušit getProfile volání). naÚspěch obdrží objekt Bundle s profile data, zatímco onEriror dostává AuthError objekt s informací o chybě.soukromá třída ProfileListener implementuje APIListener { /* getProfile úspěšně dokončeno. */ @Přepsat
public void onSuccess (odpověď balíčku) {}
/* Při pokusu o získání profíka došlo k chyběfile. */ @Přepsat
public void onError (AuthError ae) {
}
} - Nářadí naÚspěch pro vaše AuthorizeListener.
In onSuccess, volání AmazonAuthorizationManager.getProfile získat zákazníka profile. getProfile, stejně jako autorizovat používá asynchronní rozhraní posluchače. Pro getProfile, toto rozhraní je APIListener, neAuthorizationListener.
/ * Autorizace byla úspěšně dokončena. * / @ Override
public void onSuccess (odpověď balíčku) {
mAuthManager.getProfile(nový ProfilePosluchač());} - Nářadí onSuccessfor vaše ProfilePosluchač.
na Suceshas dva hlavní úkoly: získat profesionálafile data z balíčku odpovědí a předat data do uživatelského rozhraní. updateProfileDatais hypotetická funkce, kterou by vaše aplikace mohla implementovat k zobrazení profile podrobnosti. setLoggedInState, další hypotetická funkce, by znamenala, že je uživatel přihlášen, a poskytl mu prostředky odhlášení.
Chcete -li získat profesionálafile data ze svazku, používáme jména uložená AuthzConstants třída. The naÚspěch balíček obsahuje profile data v BUNDLE_KEY.PROFILE svazek.
V rámci proffile balíček, data rozsahu jsou indexována pod PROFILE_KEY.NAME, PROFILE_KEY.EMAIL, PROFILE_KEY.USER_ID, a PROFILE_KEY.POSTAL_CODE. PROFILE_KEY.POSTAL_CODE je zahrnuto, pouze pokud požadujete PSČ rozsah.@ Přepis
public void onSuccess (odpověď balíčku) {
// Načíst potřebná data z Bundle Bundle profileBalíček = response.getBundle (
AuthzConstants.BUNDLE_KEY.PROFILE.val);
Název řetězce = profileBundle.getString (
AuthzConstants.PROFILE_KEY.NAME.val);
Řetězcový e -mail = profileBundle.getString (
AuthzConstants.PROFILE_KEY.EMAIL.val);
Řetězcový účet = profileBundle.getString (
AuthzConstants.PROFILE_KEY.USER_ID.val);
Řetězec PSČ = profileBundle.getString (
AuthzConstants.PROFILE_KEY.POSTAL_CODE.val);
runOnUiThread (nový Runnable () {@Override
public void run () {
updateProfileData (jméno, e -mail, účet, PSČ);
}
});
} - Nářadí onError pro vaše ProfilePosluchač.
onError zahrnuje AuthError objekt obsahující podrobnosti o chybě./* Při pokusu o získání profíka došlo k chyběfile. */ @Přepsat
public void onError (AuthError ae) {
/ * Zkuste to znovu nebo informujte uživatele o chybě * /
} - Nářadí onErrorfor vaše AuthorizeListener.
/ * Při pokusu o autorizaci aplikace došlo k chybě.
*/
@ Přepis
public void onError (AuthError ae) {
/ * Informovat uživatele o chybě * /
} - Nářadí na Zrušit vaše AuthorizeListener.
Protože autorizační proces představuje uživateli přihlašovací obrazovku (a případně obrazovku souhlasu) v souboru web prohlížeč (nebo a webview), uživatel bude mít příležitost zrušit přihlášení nebo opustit stránku web strana. Pokud výslovně zruší proces přihlášení, na Zrušit je nazýván. Li naCancelis volal, budete chtít resetovat své uživatelské rozhraní./ * Autorizace byla zrušena před dokončením. * /
@ Přepis
public void onCancel (příčina balíčku) {
/ * resetovat uživatelské rozhraní do stavu připraveného k přihlášení * /
}Poznámka: Pokud uživatel opustí přihlašovací obrazovku v prohlížeči nebo web view a přepne zpět do vaší aplikace, SDK nerozpozná, že přihlášení nebylo dokončeno. Pokud ve své aplikaci zjistíte aktivitu uživatele před dokončením přihlášení, můžete předpokládat, že se z prohlížeče vzdálili a podle toho reagovat.
Při přihlášení zkontrolujte přihlášení uživatele
Pokud se uživatel přihlásí do vaší aplikace, zavře aplikaci a restartuje ji později, aplikace má stále oprávnění k načtení dat. Uživatel není automaticky odhlášen. Při spuštění můžete uživateli zobrazit přihlášeného, pokud je vaše aplikace stále autorizovaná. Tato část vysvětluje, jak pomocí getToken zjistit, zda je aplikace stále autorizovaná.
- Vytvořte a TokenListener.
TokenListener implementuje APIListener rozhraní a zpracuje výsledek volání getToken. APIListener obsahuje dvě metody: naÚspěch a onError (nepodporuje na Zrušit protože neexistuje způsob, jak zrušit getToken volání). naÚspěch přijímá objekt Bundle s daty tokenu, zatímco onError dostává AuthError objekt s informací o chybě.soukromá třída TokenListener implementuje APIListener { / * getToken úspěšně dokončeno. * / @ Override
public void onSuccess (odpověď balíčku) {
}
/ * Při pokusu o získání tokenu došlo k chybě. * / @ Override
public void onError (AuthError ae) {
}
} - V onStart způsob vaší aktivity, volejte getToken zjistit, zda je aplikace stále autorizovaná.
getToken načte surový přístupový token, který Správce AmazonAuthorization používá k přístupu k zákazníkovi profile. Pokud hodnota tokenu není null, pak je aplikace stále autorizovaná a volání getProfile by měl uspět. getTokenpožaduje stejné rozsahy, jaké jste požadovali ve své výzvě k autorizaci.
getTokensupports asynchronní volání stejným způsobem jako getProfile, takže nemusíte blokovat vlákno uživatelského rozhraní ani vytvářet vlastní pracovní vlákno. Chcete -li volat getToken asynchronně, předejte objekt, který podporuje APIListener rozhraní jako konečný parametr.@ Přepis
Protected Void onStart () {
super. na začátku
(); mAuthManager.getToken (nový řetězec [] {“profile","poštovní směrovací číslo"},
nový
TokenListener ());
} - Nářadí naÚspěch pro vaše TokenListener.
na Suceshas dva úkoly: načíst token z balíčku a pokud je token platný, volat getProfile.
K načtení dat tokenu z balíčku používáme názvy uložené v AuthzConstants třída. The naÚspěch balíček obsahuje data tokenu v hodnotě BUNDLE_KEY.TOKEN. Pokud tato hodnota není null, tento exampvolá getProfile pomocí stejného posluchače, který jste deklarovali v předchozí části (viz kroky 7 a 8)./ * getToken úspěšně dokončeno. * /
@ Přepis
public void onSuccess (odpověď balíčku) {
konečný řetězec authzToken =
response.getString (AuthzConstants.BUNDLE_KEY.TOKEN.val);
if (! TextUtils.isEmpty (authzToken))
{
// Získejte profesionálafile data
mAuthManager.getProfile(nový ProfilePosluchač());
}
}
Metoda clearAuthorizationState vymaže autorizační data uživatele z místního úložiště dat AmazonAuthorizationManager. Aby se aplikace mohla načíst pro, bude se muset uživatel znovu přihlásitfile data. Tuto metodu použijte k odhlášení uživatele nebo k řešení problémů s přihlášením v aplikaci.
- Implementujte odhlášení
Když se uživatel úspěšně přihlásí, měli byste poskytnout mechanismus odhlášení, aby mohl vymazat své profesionályfile dat a dříve autorizovaných rozsahů. Vaším mechanismem může být hypertextový odkaz nebo položka nabídky. Pro tento example vytvoříme onClick metoda pro tlačítko. - V obslužné rutině odhlášení volejte clearAuthorizationState. clearAuthorizationState odstraní autorizační data uživatele (přístupové tokeny, profile) z místního obchodu. clearAuthorizationStatetakes žádné parametry kromě APIListener vrátit úspěch nebo
- Prohlásit za anonymního APIListener.
Anonymní třídy jsou užitečnou alternativou k deklarování nové třídy k implementaci APIListener. Vidět Ovládejte přihlašovací tlačítko a získejte Profile Data (str. 17) pro an exampnechat to deklaruje třídy posluchače. - Nářadí naÚspěch uvnitř APIListener
Když clearAuthorizationState uspěje, měli byste aktualizovat své uživatelské rozhraní, abyste odstranili odkazy na uživatele, a poskytnout mechanismus přihlášení, který mohou uživatelé použít k opětovnému přihlášení. - Nářadí onError uvnitř APIListener.
If clearAuthorizationStatereturns chyba, můžete nechat uživatele pokusit se znovu odhlásit.@ Přepis
protected void onCreate(Bundle savedInstanceState) {
super.onCreate (savedInstanceState);
/ * Předchozí onCreate deklarace vynechána * /
// Najděte tlačítko s ID odhlášení a nastavte obslužný program kliknutí
mLogoutButton = (tlačítko) najítViewById (R.id.logout);
mLogoutButton.setOnClickListener (nový OnClickListener () {
@ Přepis
veřejná neplatnost onClick (View v) {
mAuthManager.clearAuthorizationState (nové
APIListener () {
@ Přepis
public void onSuccess (výsledky balíčku) {
// Nastavit odhlášený stav v uživatelském rozhraní
}
@ Přepis
public void onError (AuthError authError) {
// Zaznamenejte chybu
}
});
}
});
}
Nějaký Správce AmazonAuthorization metody vracejí objekt budoucnosti. To vám umožní volat metodu synchronně místo předávání posluchače jako parametru. Pokud používáte objekt Budoucnost, neměli byste ho používat ve vlákně uživatelského rozhraní. Pokud zablokujete vlákno uživatelského rozhraní na více než pět sekund, zobrazí se výzva ANR (aplikace nereaguje). V tlačítku Zpracovat přihlášení a Získat Profile Údaje napřample, the naÚspěch metoda pro AuthorizeListener je volána s pracovním vláknem vytvořeným Správce AmazonAuthorization. To znamená, že je bezpečné použít toto vlákno k volání getPirofile synchronně. Chcete -li provést synchronní hovor, přiřaďte návratovou hodnotu z getPirofile k objektu budoucnosti a zavolat giet metoda na tomto objektu počkat, až se metoda dokončí.
Fuiture.get vrátí objekt Bundle, který obsahuje a FUTURE_TYPE hodnota ÚSPĚCH, CHYBA, or ZRUŠIT. Pokud byla metoda úspěšná, stejný balíček bude obsahovat PROFILE_KEY hodnoty pro profesionályfile data. Za exampten:
/ * Autorizace byla úspěšně dokončena. * / @ Přepis public void onSuccess (odpověď balíčku) { Budoucnost <Bundle> future = mAuthManager.getProfile(nula); Výsledek balíčku = future.get (); // Zjistěte, zda bylo volání úspěšné, a načtěte profesionálafile Objekt future_type = result.get (AuthzConstants.BUNDLE_KEY.FUTURE.val); if (future_type == AuthzConstants.FUTURE_TYPE.SUCCESS) { Název řetězce = result.getString (AuthzConstants.PROFILE_KEY.NAME.val); Řetězec e -mailu = result.getString (AuthzConstants.PROFILE_KEY.EMAIL.val); Řetězcový účet = result.getString (AuthzConstants.PROFILE_KEY.USER_ID.val); Řetězec zipcode = result.getString (AuthzConstants.PROFILE_KEY.POSTAL_CODE.val); runOnUiThread (nový Runnable () {@Override public void run () {updateProfileÚdaje (jméno, e -mail, účet, PSČ); } }); } else if (future_type == AuthzConstants.FUTURE_TYPE.ERROR) { // Získat chybový objekt AuthError authError = AuthError.extractError (výsledek); / * Použijte authError k diagnostice chyby * / } |
Přihlaste se pomocí Amazon Začínáme - průvodce pro Android - Stáhnout [optimalizováno]
Přihlaste se pomocí Amazon Začínáme - průvodce pro Android - Stáhnout