Mantenha tudo organizado com as coleções
Salve e categorize o conteúdo com base nas suas preferências.
Selecione a plataforma:
Recursos do ARCore, como a API Geospatial
API e o Cloud Anchors usam a
API ARCore hospedada no Google Cloud. Ao usar esses recursos, o aplicativo
usa credenciais para acessar o serviço da API ARCore.
Neste guia de início rápido, descrevemos como configurar seu aplicativo para que ele possa
se comunicar com o serviço da API ARCore hospedado no Google Cloud.
Criar um novo projeto do Google Cloud ou usar um projeto atual
Um aplicativo iOS pode se comunicar com a API ARCore usando dois
métodos de autorização: autorização sem chave, que é o método
recomendado e autorização de chave de API:
A autorização sem chave usa um token assinado para controlar o acesso à API. Isso
exige que um servidor de sua propriedade assine tokens e controle o acesso a
a API.
Uma chave de API é uma string que identifica um projeto do Google Cloud. As chaves de API são
geralmente não são considerados seguros, porque costumam ser acessíveis aos clientes.
Considere usar a autorização de token para se comunicar com a API ARCore.
Sem chave
O ARCore oferece suporte à autorização de chamadas de API no iOS usando um arquivo (JSON Web
token). O token deve ser assinado por um
Conta de serviço.
Para gerar tokens para iOS, você precisa ter um endpoint no seu servidor
que atenda aos seguintes requisitos:
Seu próprio mecanismo de autorização precisa proteger o endpoint.
O endpoint precisa gerar um novo token todas as vezes, assim:
Cada usuário recebe um token exclusivo.
Os tokens não expiram imediatamente.
Criar uma conta de serviço e uma chave de assinatura
Siga estas etapas para criar uma conta de serviço do Google e uma chave de assinatura:
No Google Cloud, abra a página "Credenciais". Credenciais
Clique em Criar credenciais > Conta de serviço.
Em Detalhes da conta de serviço, digite um nome para a nova conta e clique em
Criar.
Na página "Permissões da conta de serviço", acesse o menu suspenso Selecionar papel.
Selecione Contas de serviço > Criador de token da conta de serviço e clique em
Continuar.
Na página Conceda aos usuários acesso a essa conta de serviço, clique em "Concluído".
Na página Credenciais
localize a seção "Contas de serviço" e clique no nome da conta
que você acabou de criar.
Na página Detalhes da conta de serviço, role para baixo até a seção "Chaves" e
selecione Adicionar chave > Criar nova chave.
Selecione JSON como o tipo de chave e clique em Criar.
Isso faz o download de um arquivo JSON que contém a chave privada na sua máquina. Armazenamento
faça o download do arquivo de chave JSON em um local seguro.
Criar tokens no seu servidor
Para criar novos tokens (JWTs) no seu servidor, use o JWT padrão
bibliotecas
e o arquivo JSON que você transferiu por download com segurança da sua nova conta de serviço.
Criar tokens na sua máquina de desenvolvimento
Para gerar JWTs na sua máquina de desenvolvimento, use o seguinte
Comando oauth2l:
É necessário especificar um local de cache vazio usando a flag --cache para
garantir que um token diferente seja produzido a cada vez. Não se esqueça de cortar
string resultante. Espaços extras ou caracteres de nova linha farão com que a API
rejeitar o token.
Assinar o token
É preciso usar o algoritmo RS256 e as seguintes declarações para assinar o JWT:
iss: o endereço de e-mail da conta de serviço.
sub: o endereço de e-mail da conta de serviço.
iat: o horário da época Unix em que o token foi gerado, em segundos.
exp — iat + 3600 (1 hora). O horário da época Unix em que o token expira,
em segundos.
aud — o público-alvo. Ele precisa ser definido comohttps://arcore.googleapis.com/
As declarações não padrão não são obrigatórias no payload do JWT, mas você pode encontrar a
A declaração uid é útil para identificar o usuário correspondente.
Se você usa uma abordagem diferente para gerar os JWTs, como usar um
em um ambiente gerenciado pelo Google, assine seus JWTs com as declarações
nesta seção. Acima de tudo, verifique se o público-alvo está correto.
Transmitir o token na sessão do ARCore
Seu app agora está configurado para usar a autenticação sem chave.
Observe o seguinte ao transmitir um token para a sessão:
Se você usou uma chave de API para criar a sessão, o ARCore ignorará o
e registrar um erro.
Se você não precisar mais da chave de API, exclua-a na página Google Developers
console e removê-lo do
app.
O ARCore ignora tokens que contenham espaços ou caracteres especiais.
Os tokens geralmente expiram após uma hora. Se houver a possibilidade de que seus
token pode expirar durante o uso, obter um novo token e passá-lo para a API.
Chave de API
No Google Cloud, abra a página "Credenciais". Credenciais
Clique em Criar credenciais e, em seguida, selecione a chave de API no menu. O
A caixa de diálogo "Chave de API criada" mostra a string da chave recém-criada.
[null,null,["Última atualização 2025-07-26 UTC."],[[["\u003cp\u003eConfigure your application to communicate with the ARCore API service hosted on Google Cloud for features like Geospatial API and Cloud Anchors.\u003c/p\u003e\n"],["\u003cp\u003eSet up authorization using Keyless authorization (recommended) with JWT or API Key authorization, by enabling the ARCore API and creating necessary credentials.\u003c/p\u003e\n"],["\u003cp\u003eFor Keyless authorization, generate JWTs on your server or development machine with specific claims and pass the token in the ARCore session securely.\u003c/p\u003e\n"],["\u003cp\u003eFor API Key authorization, create an API key in Google Cloud and securely integrate it into your application while adhering to API key restrictions.\u003c/p\u003e\n"],["\u003cp\u003eOnce authorization is configured, explore ARCore features such as Geospatial API and Cloud Anchors that utilize it.\u003c/p\u003e\n"]]],["To access ARCore features like Geospatial API and Cloud Anchors, you must enable the ARCore API in your Google Cloud project. For iOS apps, keyless authorization (using JSON Web Tokens signed by a Google Service account) is recommended. This method involves creating a service account, generating a JSON key file, and creating tokens on your server with specific claims (iss, sub, iat, exp, aud). Alternatively, API keys can be used but are less secure. Your application can then pass the token or api key to the ARCore session.\n"],null,["# Use the ARCore API on Google Cloud\n\n**Select platform:** Android Unity (AR Foundation) iOS\n\nARCore features such as the [Geospatial\nAPI](/ar/develop/geospatial) and [Cloud Anchors](/ar/develop/cloud-anchors) use the\nARCore API hosted on Google Cloud. When using these features, your application\nuses credentials to access the ARCore API service.\n\nThis quickstart describes how to set up your application so that it can\ncommunicate with the ARCore API service hosted on Google Cloud.\n\nCreate a new Google Cloud project or use an existing project\n------------------------------------------------------------\n\nIf you have an existing project, select it.\n\n[Go to project selector](https://console.cloud.google.com/projectselector2/home/dashboard)\n\nIf you don't have an existing Google Cloud project, create one.\n\n[Create new project](https://console.cloud.google.com/projectcreate)\n\nEnable the ARCore API\n---------------------\n\nTo use the ARCore API, you must enable it in your project.\n\n[Enable the ARCore API](https://console.cloud.google.com/apis/library/arcore)\n\n\u003cbr /\u003e\n\nSet up an authorization method\n------------------------------\n\nAn iOS application can communicate with the ARCore API using two different\nauthorization methods: Keyless authorization, which is the\nrecommended method, and API Key authorization:\n\n- Keyless authorization uses a token signed to control access to the API. This method requires a server owned by you to sign tokens and control access to the API.\n- An API key is a string that identifies a Google Cloud project. API keys are generally not considered secure as they are typically accessible to clients. Consider using Token authorization to communicate with the ARCore API.\n\n### Keyless\n\n\nARCore supports the authorization of API calls in iOS using a ([JSON Web\ntoken](https://jwt.io/)). The token must be signed by a Google\nService account.\n\nIn order to generate tokens for iOS, you must have an endpoint on your server\nthat satisfies the following requirements:\n\n- Your own authorization mechanism must protect the endpoint.\n\n- The endpoint must generate a new token every time, such that:\n\n - Each user gets a unique token.\n - Tokens don't immediately expire.\n\n### Create a service account and signing key\n\nFollow these steps to create a Google service account and signing key:\n\n1. In Google Cloud, open the Credentials page. \n [Credentials](https://console.cloud.google.com/apis/credentials)\n2. Click **Create Credentials \\\u003e Service account**.\n3. Under **Service account details** , type a name for the new account, then click **Create**.\n4. On the Service account permissions page, go to the **Select a role** drop-down. Select **Service Accounts \\\u003e Service Account Token Creator**, then click Continue.\n5. On the **Grant users access to this service account** page, click Done.\n6. On the [Credentials](https://console.cloud.google.com/apis/credentials) page, find the Service Accounts section and click the name of the account you just created.\n7. On the **Service account details** page, scroll down to the Keys section and select **Add Key \\\u003e Create new key**.\n8. Select **JSON** as the key type and click **Create**.\n\n This downloads a JSON file containing the private key to your machine. Store\n the downloaded JSON key file in a secure location.\n | **Note:** This file contains a private key which must not be exposed to the public. Do **not** commit it to source code repositories like GitHub.\n\n### Create tokens on your server\n\nTo create new tokens (JWTs) on your server, use the [standard JWT\nlibraries](https://jwt.io/#libraries-io)\nand the JSON file that you securely downloaded from your new service account.\n\n### Create tokens on your development machine\n\nTo generate JWTs on your development machine, use the following\n[`oauth2l`](https://github.com/google/oauth2l) command: \n\n```\noauth2l fetch --cache \"\" --jwt --json $KEYFILE --audience \"https://arcore.googleapis.com/\"\n```\n\nSpecifying an empty cache location using the `--cache` flag is necessary to\nensure that a different token is produced each time. Be sure to trim the\nresulting string. **Extra spaces or newline characters will cause the API to\nreject the token**.\n\n### Sign the token\n\nYou must use the `RS256` algorithm and the following claims to sign the JWT:\n\n- `iss` --- The service account email address.\n- `sub` --- The service account email address.\n- `iat` --- The Unix epoch time when the token was generated, in seconds.\n- `exp` --- `iat` + `3600` (1 hour). The Unix epoch time when the token expires, in seconds.\n- `aud` --- The audience. **It must be set to** `https://arcore.googleapis.com/`.\n\nNon-standard claims are not required in the JWT payload, though you may find the\n`uid` claim useful for identifying the corresponding user.\n\nIf you use a different approach to generate your JWTs, such as using a Google\nAPI in a Google-managed environment, make sure to sign your JWTs with the claims\nin this section. Above all, make sure that the audience is correct.\n\n### Pass the token in the ARCore session\n\nYour app is now configured to use Keyless authentication.\n\nNote the following when you pass a token into the session:\n\n- If you have used an API key to create the session, ARCore will ignore the\n token and log an error.\n\n If you no longer need the API key, delete it in the [Google Developers\n Console](https://console.developers.google.com/) and remove it from your\n app.\n- ARCore ignores tokens that contain spaces or special characters.\n\n- Tokens typically expire after one hour. If there is a possibility that your\n token may expire while in use, obtain a new token and pass it to the API.\n\n### API Key\n\n\n1. In Google Cloud, open the Credentials page. \n [Credentials](https://console.cloud.google.com/apis/credentials)\n2. Click **Create credentials** , then select **API key** from the menu. \n The API key created dialog displays the string for your newly created key.\n3. \n4. Review [documentation on API key restrictions](https://cloud.google.com/docs/authentication/api-keys#api_key_restrictions) to secure your API key.\n\nYour app is now configured to use API keys.\n\nWhat's next\n-----------\n\nWith authorization configured, check out the following ARCore features that use\nit:\n\n- [Geospatial API](/ar/develop/geospatial)\n- [Cloud Anchor API](/ar/develop/cloud-anchors)"]]