Configure as configurações do app para que ele possa usar a API Geospatial.
Pré-requisitos
Entenda os conceitos fundamentais de RA e como configurar uma sessão do ARCore antes de continuar.
Consulte a Introdução à API Geospatial para mais informações.
Se você não tem experiência no desenvolvimento com o ARCore, consulte os Primeiros passos para ver informações sobre requisitos de software e hardware, pré-requisitos e outras informações específicas para as plataformas que você está usando.
Para usar a API Geospatial do ARCore, seu projeto precisa oferecer suporte à AR Foundation e às extensões do ARCore para a AR Foundation.
Ativar a API ARCore
Antes de usar o sistema de posicionamento visual (VPS) no seu app, é necessário ativar a API ARCore em um projeto novo ou existente do Google Cloud. Esse serviço é responsável por hospedar, armazenar e resolver âncoras geoespaciais.
A autorização sem chave é a preferida, mas a autorização de chave de API também é aceita.
Adicionar as bibliotecas necessárias ao app
Depois de autorizar o app a chamar a API ARCore, adicione bibliotecas para ativar os recursos geoespaciais no app.
- Navegue até Edit > Project Settings > XR Plug-In Management > ARCore Extensions.
- Em Recursos opcionais, selecione Geoespacial.
Ativar os recursos geoespaciais na configuração da sessão
Depois que a funcionalidade geoespacial for ativada no app, ative os recursos geoespaciais na configuração da sessão de RA para que ele possa se comunicar com a API ARCore:
- Verifique se a pasta Assets do projeto contém um objeto ARCoreExtensionsConfig de script. Para criar uma, clique com o botão direito do mouse no painel Assets e selecione Create > XR > ARCore Extensions Config.
Selecione o objeto de script ARCoreExtensionsConfig na pasta Assets e defina o modo geoespacial como Ativado.
Configure o objeto de jogo ARCore Extensions para usar a configuração ARCoreExtensionsConfig. No painel Hierarchy, localize o objeto de jogo ARCore Extensions que você criou quando configurou as extensões do ARCore inicialmente e conecte o campo ARCore Extensions Config ao objeto scriptável ARCoreExtensionsConfig na sua pasta Assets.
Pedir ao usuário para permitir o uso de dados do dispositivo
Os apps que usam a API Geoespacial do ARCore precisam apresentar ao usuário uma solicitação para confirmar e permitir o uso de dados do dispositivo. Consulte Requisitos de privacidade do usuário para mais informações.
Verificar a compatibilidade do dispositivo
Nem todos os dispositivos compatíveis com o ARCore também são compatíveis com a API Geospatial. Para verificar
a compatibilidade do dispositivo do usuário, chame
AREarthManager.IsGeospatialModeSupported()
.
Se ele retornar FeatureSupported.Unsupported
, não tente configurar a
sessão.
Pedir permissões de localização ao usuário no momento da execução
As extensões do ARCore solicitam automaticamente as permissões de localização adequadas
quando o modo geoespacial está ativado em ARCoreExtensions.Update()
. Se o usuário não
conceder a permissão de localização precisa, a sessão não será retomada e um
erro "permissão não concedida" será produzido. Esse é um erro de
encerramento e requer uma reinicialização para acionar a solicitação de permissão novamente.
Verificar a disponibilidade geoespacial no local atual do dispositivo
Como a API Geospatial usa uma combinação de VPS e GPS para determinar uma pose geoespacial, ela pode ser usada desde que o dispositivo consiga determinar a própria localização. Em áreas com baixa precisão de GPS, como espaços internos e ambientes urbanos densos, a API vai depender da cobertura do VPS para gerar poses de alta precisão. Em condições normais, o VPS pode fornecer uma precisão posicional de aproximadamente 5 metros e uma precisão de rotação de 5 graus. Use AREarthManager.CheckVpsAvailability()
para determinar se um determinado local tem cobertura de VPS.
A API Geospatial também pode ser usada em áreas sem cobertura de VPS. Em ambientes externos com poucas ou nenhuma obstrução acima, o GPS pode ser suficiente para gerar uma pose com alta precisão.
A seguir
- Conseguir a pose geoespacial da câmera do dispositivo para determinar a localização exata do dispositivo do usuário no mundo real.
- Confira a disponibilidade de VPS no local de um dispositivo.