Login com Amazon Guia de primeiros passos para aplicativos Android

Login com Amazon: Guia de primeiros passos para Android
Copyright © 2017 Amazon.com, Inc. ou suas afiliadas. Todos os direitos reservados.
Amazon e o logotipo da Amazon são marcas comerciais da Amazon.com, Inc. ou de suas afiliadas. Todas as outras marcas comerciais não pertencentes à Amazon são propriedade de seus respectivos proprietários.
Instale as ferramentas de desenvolvedor Android
O Login com Amazon SDK para Android ajudará você a adicionar Login com Amazon aos seus aplicativos Android, Fire TV e Fire Tablet. Recomendamos que você use o Login com Amazon SDK para Android com Android Studio. Para obter as etapas sobre como instalar o Android Studio e obter a configuração do Android SDK, consulte Obtenha o SDK do Android em developer.android.com.
Para usar o Login com Amazon SDK para Android, seu aplicativo Android deve atender a um destes requisitos mínimos:
- Versão mínima do SDK (minSdkVersion) do Android 0 (API de nível 11) ou superior.
- Versão mínima do SDK (minSdkVersion) do Android 2.2 (API de nível 8) ou superior com a v4 Suporte Android Biblioteca.
Quando o Android SDK estiver instalado, encontre o Gerenciador de SDK aplicativo em sua instalação Android. Para desenvolver para Login com a Amazon, você deve usar o SDK Manager para instalar os requisitos mínimos do SDK acima. Ver Adicionando Pacotes SDK em developer.android.com para obter mais informações sobre como usar o SDK Manager.
Depois de instalar o SDK, configure um Android Virtual Device (AVD) para executar seus aplicativos. Ver Gerenciando Dispositivos virtuais em developer.android.com para obter instruções sobre como configurar um dispositivo virtual.
Quando seu ambiente de desenvolvimento é configurado, você pode Instale o Login com Amazon SDK para Android or Execute o Sampo aplicativo, como descrito abaixo
Instale o Login com Amazon SDK para Android
O Login com Amazon SDK para Android vem em dois pacotes. O primeiro contém a biblioteca Android e a documentação de suporte. O segundo contém comoampo aplicativo que permite que um usuário faça o login e exiba seus profissionaisfile dados.
Se você ainda não instalou o Android SDK ou as Android Development Tools, consulte o Instalando as ferramentas de desenvolvedor Android seção acima.
- Download fecho eclair e extrair o files para um diretório em seu disco rígido. Você deveria ver um documentos e um livre subdiretório.
- Abrir docs / index.html para view a Referência de Login com Amazon Android API.
- Ver Instale o Login com Biblioteca Amazon para obter instruções sobre como adicionar a biblioteca e documentação a um Android
Quando o Login com Amazon SDK para Android é instalado, você pode Crie um novo login com a Amazon Projeto Depois de você Registre-se com Login na Amazon.
Execute o Sampo aplicativo
Para executar o sampo aplicativo, importe os samparquivo em um espaço de trabalho do AndroidStudio.
- Download SampleLoginWithAmazonAppForAndroid-src.zip e extrair o files para um diretório em seu disco
- Inicie o Android Studio e selecione Abra um Studioproject existente do Android.
- Navegue até o SampleLoginWithAmazonApp diretório obtido após extrair o zip baixado file na Etapa 1.
- Do Construir menu, clique Fazer Projeto, e espere o projeto terminar a licitação.
- Do Correr menu, clique Correr e então clique no SampleLoginWithAmazonApp.
- Selecione o emulador ou dispositivo Android conectado e clique em Correr.
Registre-se com Login na Amazon
Antes de poder usar o Login com a Amazon em um website ou em um aplicativo móvel, você deve registrar um aplicativo com Login com Amazon. Seu aplicativo Login com Amazon é o registro que contém informações básicas sobre seu negócio e informações sobre cada website ou aplicativo móvel que você cria que oferece suporte ao Login com a Amazon. Essas informações comerciais são exibidas aos usuários sempre que eles usam o Login com a Amazon em seu website ou aplicativo móvel. Os usuários verão o nome de seu aplicativo, seu logotipo e um link para sua política de privacidade. Estas etapas demonstram como registrar seu aplicativo Android para uso com Login com Amazon.
Registre seu login com o aplicativo Amazon
- Vá para https://login.amazon.com.
- Se você já se inscreveu para Login com a Amazon antes, clique em Console de aplicativos. Caso contrário, clique Inscrever-se. Você será redirecionado para a Central do Vendedor, que lida com o registro do aplicativo para Login com Se esta for a primeira vez que usa a Central do Vendedor, será solicitado que você configure uma conta da Central do Vendedor.
- Clique Registrar Nova Aplicação. O Registre sua aplicação o formulário aparecerá:
a. No Registre sua aplicação formulário, insira um Nome e um Descrição para sua aplicação.
O Nome é o nome exibido na tela de consentimento quando os usuários concordam em compartilhar informações com seu aplicativo. Este nome se aplica ao Android, iOS e webversões do site do seu aplicativo. o Descrição ajuda a diferenciar cada um de seu Login com aplicativos da Amazon e não é exibido para os usuários.
b. Digite um Aviso de privacidade URL para sua aplicação.
O Aviso de privacidade URL é a localização da política de privacidade de sua empresa ou aplicativo (por exemplo,ampele, http://www.example.com/privacy.html). Este link é exibido para os usuários na tela de consentimento.
c. Se você quiser adicionar um Imagem do logotipo para sua aplicação, clique Navegar e localize a imagem aplicável. - Clique Salvar. Seuampo registro deve ser semelhante a este:

Depois que as configurações básicas do aplicativo forem salvas, você pode adicionar configurações para aplicativos específicos. websites e aplicativos móveis que usarão este Login com conta da Amazon.
Adicionar configurações do Android ao seu aplicativo
Para registrar um aplicativo Android, você tem a opção de registrar um aplicativo através da Amazon Appstore (Adicionar um aplicativo Android para Amazon Appstore) ou diretamente com Login com a Amazon (Adicionar um Android Aplicativo sem Appstore) Quando seu aplicativo for registrado, você terá acesso a uma chave de API que concederá a seu aplicativo acesso ao serviço de autorização Login com Amazon.
Observação: Se você planeja usar Amazon Device Messaging em seu aplicativo Android, entre em contato lwa-suporte@amazon.com com:
- O endereço de e-mail da conta da Amazon que você usou para se inscrever para Login com
- O endereço de e-mail da conta da Amazon que você usou para se inscrever na Amazon Appstore (se for diferente).
- O nome em sua conta da Central do Vendedor (na Central do Vendedor, clique em Configurações> Informações da conta> Informações do vendedor, e use o Nome de exibição).
- O nome em sua conta de desenvolvedor Amazon Appstore (no site Mobile App Distribution, clique em Configurações> Empresa Profile e usar o Nome do desenvolvedor ou nome da empresa).
Adicionar um aplicativo Android para Amazon Appstore
As etapas a seguir irão adicionar um aplicativo Amazon Appstore ao seu Login com conta Amazon:
- Na tela do aplicativo, clique em Configurações do Android. Se você já tem um aplicativo Android registrado, procure o Adicionar chave API botão no Configurações do Android seleção
O Detalhes do aplicativo Android o formulário aparecerá: - Selecione Sim em resposta à pergunta “Este aplicativo é distribuído por meio da Amazon Appstore?”
- Entre no Rótulo do seu aplicativo Android. Não precisa ser o nome oficial do seu aplicativo. Ele simplesmente identifica este aplicativo Android específico entre os aplicativos e websites registrados em seu Login com a Amazon
- Adicione seu ID da Amazon Appstore.
- Se você autoassinou seu aplicativo, adicione informações de autoassinatura. Isso permitirá que você obtenha uma chave de API durante o desenvolvimento sem usar o Appstore diretamente.
a. Se o seu aplicativo não estiver sendo assinado por meio da Amazon Appstore, selecione Sim em resposta à pergunta “Este aplicativo é autoassinado?”
O Detalhes do aplicativo Android a forma irá expandir

b. Digite seu Nome do pacote.
Deve corresponder ao nome do pacote do seu projeto Android. Para determinar o nome do pacote do seu projeto Android, abra o projeto em sua escolha de ferramenta de desenvolvedor Android. Abrir
AndroidManifest.XML no Package Explorer e selecione o Manifesto aba. A primeira entrada é o Pacote nome.
c. Entre no aplicativo Assinatura.
Este é um valor de hash SHA-256 usado para verificar seu aplicativo. A assinatura deve ser na forma de 32 pares hexadecimais separados por dois pontos (por exampem: 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:23:45:67:89:ab:cd:ef). Ver Assinaturas de aplicativos Android e chaves de API para ver as etapas que você pode usar para extrair a assinatura do seu projeto.
6. Clique Salvar.
Adicionar um aplicativo Android sem Appstore
Se você deseja registrar seu aplicativo Android sem usar a Amazon Appstore, você pode usar as seguintes etapas para registrar seu nome de pacote e assinatura com Login com a Amazon:
- Na tela do aplicativo, clique em Configurações do Android. Se você já tem um aplicativo Android registrado, procure o Adicionar chave API botão no Configurações do Android O Detalhes do aplicativo Android o formulário aparecerá:

- Selecione Não em resposta à pergunta “Este aplicativo é distribuído por meio da Amazon Appstore?”
- Entre no Rótulo do seu Android
Não precisa ser o nome oficial do seu aplicativo. Ele simplesmente identifica este aplicativo Android específico entre os aplicativos e websites que você registrou. - Digite seu Nome do pacote. Deve corresponder ao nome do pacote do seu projeto Android.
Para determinar o nome do pacote do seu projeto Android, abra o projeto em sua escolha de ferramenta de desenvolvedor Android. Abrir AndroidManifest.XML no Package Explorer e selecione o Manifesto aba. A primeira entrada é o Pacote nome. - Entre no aplicativo Assinatura.
Este é um valor de hash SHA-256 usado para verificar seu aplicativo. A assinatura deve ser na forma de 32 pares hexadecimais separados por dois pontos (por exampem: 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:23:45:67:89:ab:cd: ef) Veja o Assinaturas de aplicativos Android e chaves de API seção abaixo para as etapas que você pode usar para extrair a assinatura do seu projeto. - Clique Salvar.
Se diferentes versões de seu aplicativo tiverem assinaturas ou nomes de pacote diferentes, como para uma ou mais versões de teste e uma versão de produção, cada versão exigirá sua própria chave de API. De Configurações do Android do seu aplicativo, clique no Adicionar chave API botão para criar chaves adicionais para seu aplicativo (uma por versão).
Assinaturas de aplicativos Android e chaves de API
A assinatura do aplicativo é um valor de hash SHA-256 que é aplicado a todos os aplicativos Android quando ele é construído. A Amazon usa a assinatura do aplicativo para construir sua chave de API. A chave API permite que os serviços da Amazon reconheçam seu aplicativo. Se você usar a Amazon Appstore para assinar seu aplicativo, a chave API é fornecida automaticamente. Se não estiver usando a Amazon Appstore, você precisará gerenciar sua chave de API manualmente.
As assinaturas de aplicativos são armazenadas em um armazenamento de chaves. Geralmente, para aplicativos Android, há um armazenamento de chaves de depuração e um armazenamento de chaves de lançamento. Para encontrar a localização do armazenamento de chaves de depuração no Android Studio, abra o Construir menu, selecione Editar Tipos de construção, então vá para o Assinando guia e localize o keystore de depuração no Loja File campo.
Um keystore de liberação normalmente é criado quando você exporta seu aplicativo Android para criar um APK assinado file. Por meio do processo de exportação, se estiver criando um novo armazenamento de chaves de liberação, você selecionará seu local. Por padrão, ele será colocado no mesmo local que seu KeyStore de depuração padrão.
Se você registrou seu aplicativo usando a assinatura de depuração durante o desenvolvimento, terá que adicionar uma nova configuração Android ao seu aplicativo quando estiver pronto para lançar o aplicativo. A nova configuração do aplicativo deve usar a assinatura do keystore de liberação.
Ver Assinando seus aplicativos em developer.android.com para obter mais informações.
Determinar a assinatura do aplicativo Android
- Se você tiver um APK assinado file:
a. Descompacte o APK file e extraia CERT.RSA. (Você pode renomear a extensão do APK para ZIP, se necessário).
b. Na linha de comando, execute:keytool -printcert-file CERT.RSA Ferramentas-chave localizado no lata diretório de instalação do Java.
- Se você tem um keystore file:
a. Na linha de comando, execute:keytool -list -v -alias - keystorefilenome> Ferramenta de chave está localizado no lata diretório de instalação do Java. O alias é o nome da chave usada para assinar o aplicativo.
b. Digite a senha da chave e pressione Digitar. - Sob Impressões digitais de certificado, copie o SHA256 valor.
Recupere a chave de API do Android
Depois de registrar uma configuração do Android e fornecer uma assinatura de aplicativo, você pode recuperar a chave API da página de registro do seu aplicativo Login com Amazon. Você precisará colocar essa chave de API em um file em seu projeto Android. Até que você faça isso, o aplicativo não será autorizado a se comunicar com o serviço de autorização Login com Amazon.
- Vá para https://login.amazon.com.
- Clique Console de aplicativos.
- No Aplicações caixa à esquerda, selecione seu
- Encontre seu aplicativo Android no Configurações do Android seção (Se você ainda não registrou um aplicativo Android, consulte Adicionar um aplicativo Android para Amazon Appstore).
- Clique Gerar valor-chave de API. Uma janela pop-up exibirá sua API. Para copiar a chave, clique Selecionar tudo para selecionar a chave inteira.
Observação: O valor da chave API é baseado, em parte, no momento em que é gerado. Portanto, os valores de chave de API subsequentes que você gerar podem ser diferentes do original. Você pode usar qualquer um desses valores de chave de API em seu aplicativo, pois todos são válidos. - Ver Adicione sua chave de API ao seu projeto para obter instruções sobre como adicionar a chave de API ao seu Android
Crie um Login com o Projeto Amazon
Nesta seção, você aprenderá como criar um novo projeto Android para Login com Amazon, configurar o projeto e adicionar código ao projeto para conectar um usuário com Login com Amazon. Estaremos descrevendo as etapas para o Android Studio, mas você pode aplicar etapas análogas a qualquer IDE ou ferramenta de desenvolvimento Android de sua escolha.
Este guia requer uma compreensão de Atividades - um conceito-chave de desenvolvimento de aplicativos Android. Aprender mais sobre Atividades e Fragmentos de Atividade em developer.android.com.
Crie um novo login com o projeto Amazon
Se você ainda não tem um projeto de aplicativo para usar o Login com Amazon, siga as instruções abaixo para criar um. Se você tiver um aplicativo existente, pule para Instale o Login com Biblioteca Amazon.
- Lançar Andróide
- Do File menu, selecione Novo e Projeto.
- Insira um Nome do aplicativo e nome da empresa para o seu
- Entre no Aplicativo e nome da empresa correspondente ao nome do pacote que você escolheu quando registrou seu aplicativo com Login na Amazon.
Se você ainda não registrou seu aplicativo, escolha um Nome do pacote e siga as instruções no Registrando-se com Login na Amazon seção depois de criar seu projeto. Se o nome do pacote de seu aplicativo não corresponder ao nome do pacote registrado, seu login com chamadas da Amazon não terá sucesso. - Selecione um SDK mínimo necessário da API 11: Android 3.0 (Honeycomb) ou superior e clique em Próximo. Você também pode usar um SDK mínimo necessário da API 8: Android 2.2 (Froyo) ou superior ao usar a v4 Biblioteca de suporte do Android.
- Selecione o tipo de atividade que deseja criar e clique Próximo.
- Preencha os detalhes relevantes e clique em Terminar.
Agora você terá um novo projeto em seu espaço de trabalho que pode ser usado para chamar Login com Amazon.
Instale o Login com Biblioteca Amazon
Se você ainda não baixou o Login com Amazon SDK para Android, consulte Instale o Login com Amazon SDK para Android.
- Usando o file sistema em seu computador, encontre o login-com-amazon-sdk.jar file dentro do Login com Amazon SDK para Android. Copie para a área de transferência.
- Com seu projeto aberto no Android Studio, abra o Projeto View.
- Clique com o botão direito do mouse no diretório pai do seu projeto / aplicativo no Projeto View e selecione Colar.
- Clique com o botão direito login-com-amazon-sdk.jar no Projeto View e selecione Adicionar como biblioteca.
Definir permissões de rede para seu aplicativo
Para que seu aplicativo use o Login com a Amazon, ele deve acessar a Internet e acessar as informações de estado da rede. Seu aplicativo deve declarar essas permissões em seu manifesto Android, se ainda não o fez.
- Do Projeto View, clique duas vezes em xml para abri-lo.
- Copie as linhas de código exibidas abaixo e cole-as no xml file, fora do bloco de aplicativos:
Exampem:

Adicione sua chave de API ao seu projeto
Quando você registra seu aplicativo Android com Login na Amazon, você recebe uma chave de API. Este é um identificador que o Amazon Authorization Manager usará para identificar seu aplicativo para o Login com o serviço de autorização da Amazon. Se você estiver usando a Amazon Appstore para assinar seu aplicativo, a Appstore fornecerá a chave de API automaticamente. Se você não estiver usando a Amazon Appstore, o Amazon Authorization Manager carrega esse valor no tempo de execução do api_key.txt file no ativos diretório.
- Se você ainda não tem sua chave de API, siga as instruções em Recupere a chave de API do Android.
- Do Projeto View no Android Studio, clique com o botão direito do mouse na pasta de ativos e clique em Novo e selecione File. Se você não tiver uma pasta de ativos, clique com o botão direito do mouse no diretório pai do seu projeto e selecione Novo, Pasta, Pasta de Ativos.
- Nomeie o file api_key.txt.
- Agora você deve ter uma janela do editor para um texto file nomeado TXT. Adicione sua chave de API ao texto file.
- No File menu, clique Salvar.
Observação: Se um editor de texto adicionar caracteres extras ao seu api_key.txt file (como um Byte Order Mark), você pode ver ERROR_ACCESS_DENIED ao tentar se conectar ao Login com o serviço de autorização da Amazon. Se isso ocorrer, tente remover qualquer espaço inicial ou final, avanços de linha ou caracteres suspeitos. (Por example, um editor que usa a marca de ordem de bytes pode adicionar 0xEF 0xBB 0xBF ou outras sequências hexadecimais ao início de seu api_key.txt file) Você também pode tentar recuperar uma nova chave de API.
Lidar com alterações de configuração para sua atividade
Se um usuário alterar a orientação da tela ou alterar o estado do teclado do dispositivo durante o login, ele solicitará o reinício da atividade atual. Essa reinicialização dispensará a tela de login inesperadamente. Para evitar isso, você deve definir a atividade que usa o método de autorização para lidar com essas alterações de configuração manualmente. Isso impedirá o reinício da atividade.
- In Pacote Explorador, clique duas vezes xml.
- No Aplicativo seção, localize a atividade que irá lidar com o Login com Amazon (forexampele, Atividade principal),
- Adicione o seguinte atributo à atividade localizada na Etapa 2:
android: configChanges = ”teclado | tecladoHidden | orientação” Ou para API 13 ou superior:
android: configChanges = ”keyboard | keyboardHidden | orientação | screenSize” - Do File menu, clique Salvar
Agora, quando ocorre uma mudança na orientação do teclado ou do dispositivo, o Android chama o método onConfigurationChanged para sua atividade. Você não precisa implementar essa função, a menos que haja um aspecto dessas alterações de configuração que você deseja manipular para seu aplicativo.
Adicione uma WorkflowActivity ao seu projeto
Quando o usuário clica no botão Login com Amazon, a API inicia um web navegador para apresentar uma página de login e consentimento ao usuário. Para que essa atividade do navegador funcione, você deve adicionar WorkflowActivity ao seu manifesto.
Se você já integrou com o Login com o Amazon SDK ou tem a atividade com.amazon.identity.auth.device.authorization.AuthorizationActivity declarada em seu AndroidManifest.xml, ela deve ser removida e substituída por WorkflowActivity.
- In Pacote Explorador, clique duas vezes AndroidMailfest.xml ..
- No Aplicativo seção, adicione o seguinte código.
<activity android:name=
“Com.amazon.identity.auth.device.workflow.WorkflowActivity” android: theme = ”@ android: style / Theme.NoDisplay” android: allowTaskReparenting = ”true” android: launchMode = ”singleTask”>
<action android:name=”android.intent.action.VIEW” />
<dados
android: host = ”$ {applicationId}” android: scheme = ”amzn” />
Observação: Se você não estiver usando o sistema de compilação Gradle, substitua $ {applicationId} pelo nome do seu pacote para este aplicativo.
O login com a Amazon oferece vários botões padrão que você pode usar para solicitar que os usuários façam login a partir do seu aplicativo. Esta seção fornece etapas para baixar um Login oficial com imagem da Amazon e emparelhá-lo com um ImageButton Android.
- Adicione um ImageButton padrão ao seu aplicativo.
Para obter mais informações sobre os botões do Android e a classe ImageButton, consulte Botões em developer.android.com.
- Dê ao seu botão um Na declaração XML do botão, defina o atributo android: id como @ + id / login_with_amazon. Para exampem:
android: id = ”@ + id / login_with_amazon” - Escolha uma imagem de botão.
Consulte nosso Login com a Amazon Diretrizes de estilo para obter uma lista de botões que você pode usar em seu aplicativo.
Baixe uma cópia do LWA_Android.zip file. Extraia uma cópia do botão de sua preferência para cada densidade de tela compatível com seu aplicativo (xxhdpi, xhdpi, hdpi, mdpi ou tvdpi). Para obter mais informações sobre o suporte de múltiplas densidades de tela no Android, consulte Layouts Alternativos no tópico “Suportando telas múltiplas” ondeveloper.android.com. - Copie a imagem do botão apropriada files para seu projeto.
Para cada densidade de tela compatível (xhdpi, hdpi, mdpi ou ldpi), copie o botão baixado para o res / drawable diretório para essa densidade de tela. - Declare a imagem do botão.
Na declaração XML do botão, defina o android: src atributo ao nome do botão que você escolheu. Por exampem:android: src = ”@ drawable / btnlwa_gold_loginwithamazon.png” - Carregue seu aplicativo e verifique se o botão agora tem uma imagem Login com Amazon.
Você deve verificar se o botão é exibido corretamente para cada densidade de tela que você suporta
Use o SDK para APIs Android
Nesta seção, você adicionará código ao seu projeto para conectar um usuário com Login com Amazon.
Esta seção explica como chamar a API de autorização para fazer o login de um usuário. Isso inclui a criação de um ao clicar ouvinte para o seu botão Login com Amazon no emCriar método do seu aplicativo.
- Adicionar Login com Amazon ao seu Android See Instale o Login com Biblioteca Amazon.
- Inicializar SolicitarContexto.
Você precisará declarar um SolicitarContexto variável e criar uma nova instância da classe. O melhor lugar para inicializar SolicitarContexto está no emCriar método de sua atividade ou fragmento Android. Para exampem:privado RequestContext requestContext;
@ Override
protegido void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); requestContext = RequestContext.create (este);
} - Criar um AutorizarListener.
AutorizeOuvinte irá processar o resultado do autorizar chamada. Ele contém três métodos: onSucesso, onError, e emCancelar. Crie o AutorizeOuvinte interface em linha com um registrarOuvinte ligue no emCriar método de sua atividade ou fragmento Android.@ Override
protegido void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState); requestContext = RequestContext.create (este);requestContext.registerListener (new AuthorizeListener () {
/ * A autorização foi concluída com sucesso. * /
@ Override
public void onSuccess (AuthorizeResult result) {
/ * Seu aplicativo agora está autorizado para os escopos solicitados * /
}
/ * Ocorreu um erro durante a tentativa de autorizar o aplicativo. * /
@ Override
public void onError (AuthError ae) {
/ * Informar o usuário do erro * /
}
/ * A autorização foi cancelada antes que pudesse ser concluída. */ @Sobrepor
public void onCancel (cancelamento de AuthCancellation) {
/ * Redefinir a IU para um estado pronto para fazer login * /
}
});
}Observação: Se você estiver usando um fragmento e capturando referências para View objetos em seu AutorizeOuvinte implementação, criar AutorizeOuvinte no emCriarView método em vez de emCriar. Isso garante a View referências de objeto são definidas quando a chamada para autorizar acabamentos.
- Implement onSucesso, onError, e onCancelar para o seu AutorizarListener.
Porque o processo de autorização apresenta uma tela de login (e possivelmente uma tela de consentimento) para o usuário em um web navegador (ou um WebView), o usuário terá a oportunidade de cancelar o login ou navegar para fora. Se eles cancelarem explicitamente o processo de login, onCancelar é chamado e você deseja redefinir a interface do usuário.
Se o usuário sair da tela de login do navegador ou WebViewe, em seguida, volta ao seu aplicativo, o SDK não detectará que o login não foi concluído. Se você detectar a atividade do usuário em seu aplicativo antes que o login seja concluído, você pode presumir que ele saiu do navegador e reagir de acordo. - Chamar RequestContext.onResume.
Para acomodar o ciclo de vida do aplicativo Android, implemente o emResume método em sua atividade ou fragmento. Isso irá acionar todos os ouvintes registrados com registrarOuvinte caso seu aplicativo seja fechado pelo sistema operacional antes que o usuário conclua um fluxo de autorização.@ Override
protected void onResume () {
super.onResume ();
requestContext.onResume ();
} - Chamar AuthorizationManager.autorizar.
No ao clicar manipulador para o seu botão Login com Amazon, chame authorize para solicitar que o usuário faça o login e autorize seu aplicativo.
Este método permitirá ao usuário fazer login e consentir com as informações solicitadas de uma das seguintes maneiras:
1. Muda para o navegador do sistema
2. Muda para WebView em um contexto seguro (se o aplicativo Amazon Shopping estiver instalado no dispositivo)
O contexto seguro para a segunda opção está disponível quando o aplicativo Amazon Shopping é instalado no dispositivo. Dispositivos criados pela Amazon rodando Fire OS (por example Kindle Fire, Fire Phone e Fire TV) sempre use essa opção, mesmo se não houver um aplicativo Amazon Shopping no dispositivo. Por causa disso, se o usuário já estiver conectado ao aplicativo Amazon Shopping, esta API irá pular a página de login, levando a um Login único experiência para o usuário. Veja a experiência do cliente em cliente-experiência-android aplicativos para saber mais. Quando seu aplicativo é autorizado, ele é autorizado para um ou mais conjuntos de dados conhecidos como escopos. Um escopo abrange os dados do usuário que você está solicitando do Login with Amazon. Na primeira vez que um usuário faz login em seu aplicativo, ele verá uma lista dos dados que você está solicitando e terá sua aprovação solicitada. O login com a Amazon atualmente oferece suporte aos seguintes escopos:Nome do escopo Descrição prófile Dá acesso ao nome do usuário, endereço de e-mail e ID da conta Amazon. prófile:ID do usuário Dá acesso apenas ao ID da conta Amazon do usuário. código postal Dá acesso ao CEP / código postal do usuário em file para sua conta na Amazon. AuthorizationManager.autorizar é uma chamada assíncrona, portanto, você não precisa bloquear o thread de IU ou criar um thread de trabalho próprio. Para ligar para autorizar, passe um Autorizar Solicitação objeto que pode ser construído usando AuthorizeRequest.Builder:
@ Override
protegido void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState);
/ * Declarações onCreate anteriores omitidas * /// Encontre o botão com o ID login_with_amazon
// e configurar um gerenciador de cliques
View botão de login = localizarViewById (R.id.login_with_amazon); loginButton.setOnClickListener (novo View.OnClickListener () {
@ Override
public void onClick (View v) {AuthorizationManager.authorize (novo AuthorizeRequest
Builder (requestContext) .addScopes (ProfileEscopo.profile(), prófileScope.postalCode ())
.construir());
});
}
Buscar usuário Profile Dados
Esta seção explica como usar a API do usuário para recuperar o profissional de um usuáriofile dados após terem sido autorizados. O profissionalfile os dados que você pode recuperar são baseados no escopo indicado no autorizar: withHandler: chamar.
- Chamar Usuário.fetch.
Usuário.fetch retorna o profissional do usuáriofile dados para você por meio do Listener AuthError> ligue de volta. Ouvinte AuthError> contém dois métodos: no Sucesso e emErro (não suporta onCancelar porque não há como cancelar um Usuário.fetch ligar). no Sucesso recebe um objeto de usuário com profile dados, enquanto emErro recebe um Erro de autenticação objeto com informações sobre o erro. atualizarProfileDados é um example de uma função que seu aplicativo poderia implementar para exibir profissionaisfile dados na interface do usuário
Observação: User.getUserPostalCode só é retornado se você solicitar o ProfileEscopo Scope.postalCode ().
Verifique o login do usuário na inicialização
Se um usuário fizer login em seu aplicativo, fechar o aplicativo e reiniciá-lo mais tarde, o aplicativo ainda está autorizado a recuperar dados. O usuário não é desconectado automaticamente. Na inicialização, você pode mostrar o usuário como conectado se o seu aplicativo ainda estiver autorizado. Esta seção explica como usar obterToken para ver se o aplicativo ainda está autorizado.
- Chamar obterToken.
No emIniciar método de sua atividade ou fragmento, ligue obterToken para ver se o aplicativo ainda está autorizado. obterToken recupera o token de acesso bruto que o Gerente de Autorização usa para acessar um usuário profissionalfile. Se o valor do token não for nulo, o aplicativo ainda está autorizado e você pode prosseguir para buscar o usuário profile dados. getToken requer os mesmos escopos solicitados em sua chamada de autorização.
getTokensupports chamadas assíncronas da mesma maneira que Usuário.fetch, portanto, você não precisa bloquear o thread de interface do usuário ou criar um thread de trabalho próprio. Chamar obterToken de forma assíncrona, passe um objeto que suporte o Ouvinte interface como o último parâmetro. - Declare um Ouvinte AuthError>. Sua implementação do Ouvinte A interface AuthError> processa o resultado do obterToken ligar. Listener contém dois métodos: no Sucesso e emErro (não suporta onCancelar porque não há como cancelar um obterToken ligar).
- Implement no Sucesso e onError para o seu Ouvinte . onSuccess recebe um AutorizarResultado objeto com um token de acesso, enquanto emErro recebe um Erro de autenticação objeto com informações sobre o erro.
@ Override
protegido void onStart () {super.onStart ();
Escopo [] escopos = {ProfileEscopo.profile(), prófileScope.postalCode ()}; AuthorizationManager.getToken (this, scopes, new
Ouvinte () {@ Override
public void onSuccess (AuthorizeResult result) {if (result.getAccessToken ()! = null) {
/ * O usuário está conectado * /
} outro {
/ * O usuário não está conectado * /
}
}
@ Override
public void onError (AuthError ae) {
/ * O usuário não está conectado * /
}
});
}
Esta seção explica como usar o método de desconexão para desconectar o usuário do seu aplicativo. O usuário terá que fazer login novamente para que o aplicativo recupere o profile dados. Use este método para desconectar um usuário ou para solucionar problemas de login no aplicativo.
- Implemente um mecanismo de logout.
Quando um usuário faz o login com sucesso, você deve fornecer um mecanismo de logout para que ele possa limpar seu profile dados e escopos previamente autorizados. Seu mecanismo pode ser um hiperlink, botão ou um item de menu. Para este example, vamos criar um método onClick para um botão. - Chamar sair.
Chamar sair em seu manipulador de logout para remover os dados de autorização de um usuário (tokens de acesso, profile) da loja local. sair pega um contexto Android e um Listener AuthError> para lidar com o sucesso ou o fracasso. - Declarar um ouvinte anônimo AuthError>.
Sua implementação de Listener AuthError> processa o resultado do sair ligar. Classes anônimas são úteis para capturar variáveis do escopo envolvente.
Ver Manuseie o botão de login e autorize o usuário para um exampletreiro declara classes de ouvinte. - Implement no Sucesso e emErro para o seu ouvinte AuthError>.
Quando assine o sucesso você deve atualizar sua IU para remover referências ao usuário e fornecer um mecanismo de login que os usuários possam usar para fazer login novamente. Se assinarOutreturns um erro, você pode permitir que o usuário tente fazer logout novamente.@ Override
protegido void onCreate (Bundle savedInstanceState) {super.onCreate (savedInstanceState);
/ * Declarações onCreate anteriores omitidas * /// Encontre o botão com o ID de logout e configure um manipulador de cliques View botão logout = localizarViewById (R.id.logout); logoutButton.setOnClickListener (novo View.OnClickListener () {@ Override
public void onClick (View v) {AuthorizationManager.signOut (getApplicationContext (), novo
Ouvinte () { @Sobrepor
public void onSuccess (Void response) {
// Definir estado desconectado na IU
}
@ Override
public void onError (AuthError authError) {
// Registrar o erro
}});
}
});
}
Login com Amazon Guia de primeiros passos para aplicativos Android - Baixar [otimizado]
Login com Amazon Guia de primeiros passos para aplicativos Android - Download



