Conceitos básicos do AWS Mobile SDK para Unity - AWSMobile SDK for Unity

OAWSMobile SDK for Unity agora está incluído noAWS SDK for .NET. Este guia faz referência à versão arquivada do Mobile SDK for Unity. Para obter mais informações, consulteO que é ?AWSMobile SDK for Unity?

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Conceitos básicos do AWS Mobile SDK para Unity

Esta página fornece uma visão geral de cada serviço da AWS no AWS Mobile SDK para Unity, bem como as instruções sobre como configurar os exemplos do Unity. Basta concluir todas as instruções sobre como Configurar a página do AWS Mobile SDK para Unity antes de começar a usar os serviços a seguir.

Amazon Cognito Identity

Todas as chamadas feitas para a AWS precisam das credenciais da AWS. Em vez de codificar suas credenciais nos aplicativos, recomendamos que utilize o Amazon Cognito Identity para fornecer credenciais da AWS ao aplicativo. Siga as instruções do item Configurar o AWS Mobile SDK para Unity para obter credenciais da AWS por meio do Amazon Cognito.

O Cognito permite também a autenticação de usuários que usam provedores públicos de login, como a Amazon, o Facebook, o Twitter e o Google, além de provedores compatíveis com o OpenID Connect. O Cognito também funciona com usuários não autenticados. O Cognito fornece credenciais temporárias, com direitos limitados de acesso especificados por você, usando uma função do Identity and Access Management (IAM). O Cognito é configurado com a criação de um novo grupo de identidades associado a uma função do IAM. A função do IAM especifica os recursos/serviços que o aplicativo pode acessar.

Para começar a usar o Cognito Identity, consulte o Guia do desenvolvedor do Amazon Cognito.

Amazon Cognito Sync

O Cognito Sync facilita salvar dados dos usuários finais, como preferências do usuário ou o estado do jogo, na Nuvem AWS. Assim, eles podem ser disponibilizados aos usuários, independentemente do dispositivo utilizado. O Cognito também pode salvar esses dados localmente, o que permite que os aplicativos funcionem, mesmo quando uma conexão com a Internet não estiver disponível. Quando uma conexão com a Internet estiver disponível, os aplicativos poderão sincronizar os dados locais na nuvem.

Para começar a usar o Cognito Sync, consulte o Guia do desenvolvedor do Amazon Cognito.

Usar oCognitoSyncExemplo do gerente

NoProjetoPainel, navegue atéAtivos/AWSSDK/exemplos/CognitoSynce No lado direito do painel, selecione oCognitoSyncCena para abrir a cena.

Para executar o exemplo, clique no botão de reprodução na parte superior da tela do editor. Quando o aplicativo for executado, ele exibirá algumas caixas de texto e botões que permitirão a inserção de algumas informações do jogador. A seguir, há uma série de botões que salvam as informações localmente, sincronizam as informações locais e atualizam os dados dele na nuvem do Cognito e excluem as informações locais do jogador. Pressione cada um dos botões para executar uma operação. O exemplo exibe o feedback na parte superior da tela do jogo.

Para configurar oCognitoSyncExemplo do gerente, você deve especificar um ID do grupo do Cognito Identity. Para especificar esse valor, no editor Unity, selecioneSyncManagernoHerquiae insira-o no painelIDENTITY_POOL_IDCaixa de texto noPainel Inspetor.

nota

OCognitoSyncO exemplo do gerente contém o código que ilustra a forma de utilização do provedor de identidade do Facebook. Pesquise a macro “USE_FACEBOOK_LOGIN”. Esta ação requer o uso do Facebook SDK para Unity. Para obter mais informações, consulte o Facebook SDK para Unity.

Dynamo DB

O Amazon DynamoDB é um serviço de banco de dados rápido, altamente disponível, altamente escalável, econômico e não relacional. O DynamoDB remove limitações de escalabilidade tradicionais sobre armazenamento de dados, mantendo, ao mesmo tempo, a baixa latência e o desempenho previsível.

O AWS SDK para Unity fornece bibliotecas de níveis inferior e superior, para que você possa trabalhar com o DynamoDB. A biblioteca de nível superior inclui o DynamoDB Object Mapper, que permite o mapeamento de classes do cliente para as tabelas do DynamoDB, a execução de várias operações de criação, leitura, atualização e exclusão (CRUD); além da execução de consultas. Com o uso do DynamoDB Object Mapper, é possível gravar um código legível e simples, que armazena os objetos na nuvem.

Para obter mais informações sobre o DynamoDB, consulte o Guia do desenvolvedor do DynamoDB.

Para obter mais informações sobre o uso do DynamoDB nos aplicativos do Unity, consulte o Amazon DynamoDB.

Uso do exemplo do DynamoDB

NoProjetoPainel, navegue atéAtivos/AWSSDK/ exemplos/DynamoDB. Este exemplo é composto pelos seguintes cenários:

  • DynamoDBExample – o cenário inicial do aplicativo

  • LowLevelDynamoDbExemplo — exemplo que usa a API do DynamoDBD de nível inferior

  • TableQueryAndScanExemplo — exemplo que mostra como executar consultas

  • HighLevelExemplo — exemplo que usa a API do DynamoDB de nível superior

Adicione estes cenários na compilação (na ordem em que aparecem acima) usando a caixa de diálogo Configurações do desenvolvedor (abrir ao selecionar as configurações File.Build). Este exemplo cria quatro tabelas: ProductCatalog, Fórum, Thread, Reply.

Para executar o exemplo, clique no botão de reprodução na parte superior da tela do editor. Quando o aplicativo for executado, ele exibirá uma série de botões:

  • Operações da tabela de nível superior – ilustra como criar, listar, atualizar, descrever e excluir tabelas.

  • Operações de nível intermediário Consulta e Varredura – ilustra como executar consultas.

  • Mapeador de objetos de nível superior – ilustra como criar, atualizar e excluir objetos.

Mobile Analytics

Com o uso do Amazon Mobile Analytics, é possível acompanhar os comportamentos dos clientes, agregar métricas, gerar visualizações de dados, além de identificar padrões significativos. O AWS SDK para Unity oferece integração com o serviço Amazon Mobile Analytics. Para obter mais informações sobre o Mobile Analytics, consulte o Guia do usuário do Mobile Analytics. Para obter mais informações sobre o uso do Mobile Analytics nos aplicativos do Unity, consulte o Amazon Mobile Analytics.

Configuração do Mobile Analytics

O Mobile Analytics define algumas configurações que podem ser especificadas no arquivo awsconfig.xml:

<mobileAnalytics sessionTimeout = "5" maxDBSize = "5242880" dbWarningThreshold = "0.9" maxRequestSize = "102400" allowUseDataNetwork = "false"/>
  • sessionTimeout – Este é o intervalo de tempo após o aplicativo ficar em segundo plano e quando a sessão pode ser encerrada.

  • maxDBSize – Este é o tamanho do banco de dados do SQLIte. Quando o banco de dados atingir o tamanho máximo, todos os eventos adicionais serão removidos.

  • dbWarningThreshold— Este é o limite para o tamanho do banco de dados, que, uma vez atingido, gerará os logs de aviso.

  • maxRequestSize— Esse é o tamanho máximo da solicitação em bytes que devem ser transmitidos em uma solicitação HTTP para o serviço de análise móvel.

  • allowUseDataRede — Um booleano que especifica se os eventos da sessão serão enviados na rede de dados.

Uso do exemplo do Mobile Analytics

NoProjetoPainel, navegue atéAtivos/AWSSDK/ exemplos/Mobile Analyticse No lado direito do painel, selecione oExemplo do Amazon Mobile AnalyticsCena para abrir a cena. Para usar a amostra, é preciso adicionar o aplicativo, usando o console do Amazon Mobile Analytics. Para obter mais informações sobre o uso do Mobile Analytics no console do Mobile Analytics, consulte o Guia de usuário do Amazon Mobile Analytics.

Siga estas etapas para configurar a amostra antes da execução:

  1. Selecione oAmazonMobileAnalyticsSampleObjeto de jogo.

  2. Especifique o ID do aplicativo (criado no console do Amazon Mobile Analytics) no campo "App Id".

  3. Especifique o ID do grupo de identidades do Cognito (criado usando o console do Amazon Cognito Console do) no campo "Cognito Identity Pool Id".

  4. Certifique-se de que suas funções autenticadas e não autenticadas tenham permissões para acessar o serviço Mobile Analytics. Para obter mais informações sobre a aplicação de políticas às Funções do IAM, consulte Gerenciar funções.

Ao executar o aplicativo de amostra, lembre-se de que os eventos não podem ser transmitidos ao serviço de back-end imediatamente. Um segmento de fundo criará eventos de buffer localmente e os enviará em lotes para o back-end do Amazon Mobile Analytics em intervalos regulares (o valor padrão é de 60 segundos), para garantir que o desempenho do seu jogo não seja afetado negativamente. Devido ao processamento complexo que o Amazon Mobile Analytics realiza em seus dados, os eventos enviados e relatórios correspondentes podem não estar visíveis no console da AWS até 60 minutos após o envio inicial.

Para obter mais informações sobre os relatórios fornecidos pela Amazon Mobile Analytics, consulte Métricas de relatório e de dispositivos móveis.

Amazon S3

O Amazon Simple Storage Service (Amazon S3) fornece aos desenvolvedores e às equipes de TI um armazenamento de objetos seguro, duradouro e altamente escalável e econômico. No Unity, você pode usar o S3 para armazenar, listar e recuperar imagens, vídeos, músicas e outros dados usados pelos seus jogos.

Para obter mais informações sobre o S3, consulte Amazon S3 e Conceitos básicos do S3.

Para obter mais informações sobre o uso do S3 nos aplicativos Unity, consulte o Amazon Simple Storage Service (S3).

Configurando o padrão de assinatura do S3

O padrão de assinatura do S3 será configurado conforme a seguir:

<s3 useSignatureVersion4="true" />

Este item será usado para especificar se você deve usar a assinatura versão 4 nas solicitações do S3.

Uso do exemplo do S3

NoProjetoPainel, navegue atéAtivos/AWSSDK/exemplos/S3e No lado direito do painel, selecione oS3ExemploCena para abrir a cena. A amostra ilustra como listar buckets e objetos dentro de um bucket, publicar objetos em um bucket e fazer o download de objetos em um bucket. Siga estas etapas para configurar a amostra antes da execução:

  1. Selecione o objeto de jogo do S3 no painel Hierarchy (Hierarquia).

  2. NoInspectorpainel insira valores paraS3BucketNameeSampleFileName (Nome). S3BucketNameÉ o nome do bucket usado pela amostra e pelo S3SampleFileNome é o nome do arquivo do qual a amostra fará upload no bucket do S3 especificado.

  3. Certifique-se de que suas funções autenticadas e não autenticadas tenham permissões para acessar o buckets do S3 em sua conta. Para obter mais informações sobre a aplicação de políticas às Funções do IAM, consulte Gerenciar funções.

Para executar o exemplo, clique no botão de reprodução na parte superior da tela do editor. Quando o aplicativo for executado, ele exibirá uma série de botões:

  • Get Objects – Recebe uma lista de todos os objetos em todos os buckets de sua conta da AWS.

  • Get Buckets – Recebe uma lista de todos os buckets de sua conta da AWS.

  • Post Object – Carrega um objeto em um bucket especificado do S3.

  • Delete Object – Exclui todos os objetos de um bucket do S3 especificado.

O exemplo exibe o feedback na parte superior da tela do jogo.

Amazon Simple Notification Service

O Amazon Simple Notification Service é um serviço de notificação por push rápido, flexível e totalmente gerenciado, que permite enviar mensagens individuais ou encaminhá-las para um grande número de destinatários. Com o Amazon Simple Notification Service, é simples e econômico enviar notificações por push para usuários de dispositivos móveis, destinatários de e-mail ou até mesmo enviar mensagens a outros serviços distribuídos. Para saber os conceitos básicos do Amazon Simple Notification Service, consulte o Amazon Simple Notification Service.

AWS Lambda

O AWS Lambda é um serviço de computação que executa seu código em resposta a solicitações ou eventos e gerencia automaticamente os recursos de computação para você, facilitando a construção de aplicativos que respondem rapidamente às novas informações. As funções do AWS Lambda podem ser chamadas diretamente do dispositivo móvel, da IoT e de aplicativos web e envia uma resposta de modo síncrono, facilitando a criação de back-ends escaláveis, seguros e altamente disponíveis para seus aplicativos móveis sem precisar prover nem gerenciar a infraestrutura. Para obter mais informações, consulte AWS Lambda.