Guia de início rápido do Cloud Anchors no iOS

A API ARCore Cloud Anchor, ou serviço ArCore Cloud Anchor, oferece recursos de âncora na nuvem para seus apps iOS, permitindo que usuários em dispositivos iOS e Android compartilhem experiências de RA.

Neste guia, mostramos como:

  • Configurar seu ambiente de desenvolvimento para trabalhar com o Cloud Anchors
  • Testar a hospedagem e a resolução de âncoras em um app de exemplo

Pré-requisitos

  • Xcode versão 13.0 ou mais recente
  • Cocoapods 1.4.0 ou posterior, se estiver usando Cocoapods
  • Um dispositivo Apple compatível com ARKit que execute o iOS 12.0 ou posterior (destino de implantação do iOS 12.0 ou mais recente necessário)

Como usar o Cloud Anchors

As etapas a seguir usam o app de amostra Cloud Anchors para mostrar as tarefas essenciais para configurar e criar um app compatível com o ARCore Cloud Anchors.

Fazer o download do app de exemplo Cloud Anchors

  1. Clone ou faça o download do SDK do ARCore para iOS no GitHub para conseguir o código do app de amostra.

  2. Abra uma janela de terminal ou localizador e navegue até a pasta em que você clonou ou fez o download do SDK.

  3. O código do app de exemplo está disponível em
    /arcore-ios-sdk-master/Examples/CloudAnchorExample.

    O código do app de exemplo das fixas na nuvem persistentes está em
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample.

Configuração da sessão

O app de exemplo executa as seguintes tarefas importantes como parte da configuração da sessão:

Configurar o compartilhamento de IDs do Cloud Anchor

O app de exemplo Cloud Anchors usa o Firebase para compartilhar IDs do Cloud Anchor entre dispositivos. Você pode usar uma solução diferente nos seus próprios apps.

Para configurar o banco de dados do Firebase no app de exemplo:

  1. Siga as instruções do Firebase para adicionar o Firebase ao seu app.
  2. Faça o download do arquivo GoogleService-Info.plist gerado como parte da adição do Firebase ao seu app.
  3. Ative o armazenamento do Firebase para a amostra:
    • Acesse o Console do Firebase e selecione o projeto que você configurou para o aplicativo de amostra.
    • Selecione o painel Database.
    • Na opção Realtime Database, clique em Get Started.
    • O menu Security rules for Realtime Database será aberto.
      • Para executar a amostra, selecione Start in test mode.
      • Se você estiver usando o Firebase para um app que pretende publicar, use regras de segurança mais restritivas.
  4. No Xcode, adicione o arquivo GoogleService-Info.plist ao seu app, ao lado de Info.plist.

Configurar a API ARCore

Para usar o Cloud Anchors, você precisa primeiro configurar a API ARCore para seu aplicativo.

Executar atualização de pod

O app CloudAnchorExample é enviado com um Podfile pré-configurado com o SDK do ARCore e as versões do iOS necessárias. Para instalar essas dependências:

  1. Abra uma janela de terminal e execute pod update na pasta em que o projeto para o Xcode existe.
    Isso gera um arquivo .xcworkspace que você vai usar mais tarde para criar e executar o app.

Consulte Adicionar o SDK do ARCore ao seu app para mais detalhes sobre como configurar o Podfile nos seus próprios apps.

  1. Abra o arquivo .xcworkspace do projeto no Xcode.

    Para evitar erros de build, verifique se você está criando a partir do arquivo .xcworkspace, e não do arquivo .xcodeproj.

Mudar o ID do pacote de app

No Xcode, altere o ID do pacote do app para que você possa assiná-lo com sua equipe.

Criar e executar o app

  1. Conecte seu dispositivo e inicie o app no Xcode.

  2. (Opcional) Se você estiver criando e executando o app de exemplo, consulte a seção a seguir para ver detalhes sobre como usar o app para hospedar e resolver o Cloud Anchors.

Testar o app de exemplo

  1. Crie e execute o app de exemplo do arquivo .xcworkspace para iniciá-lo no dispositivo.

  2. Se solicitado, conceda permissões de câmera ao app. O ARKit começa a detectar planos na frente da câmera.

  3. Toque em HOST para entrar no modo de hospedagem. Um código de sala para compartilhar âncoras hospedadas é gerado e aparece na tela.

  4. Toque em um plano para hospedar uma âncora na nuvem.

    • O app coloca um objeto Android Andy no plano e anexa uma âncora a ele.
    • Uma solicitação de host é enviada ao endpoint da nuvem da API ARCore. A solicitação de host inclui dados que representam a posição da âncora em relação aos recursos visuais próximos a ela.
    • Depois que a âncora é hospedada, ela recebe um ID usado para resolver âncoras da nuvem nesse espaço.
  5. Toque em RESOLVE e insira um código de sala para acessar os Cloud Anchors hospedados anteriormente para esta sala usando o mesmo dispositivo ou um diferente.

    • Uma solicitação de resolução é enviada ao endpoint da nuvem da API ARCore.
    • A solicitação de resolução inclui um ID de âncora da nuvem. Se o ID corresponder a uma âncora hospedada e a localização for bem-sucedida, o servidor retornará a transformação da âncora nas coordenadas locais.
    • O app de exemplo usa a transformação para adicionar a âncora à cena e renderizar objetos virtuais anexados a ela.

Adicionar o SDK do ARCore aos seus apps

Nos seus próprios apps, você precisará atualizar o Podfile para incluir o SDK do ARCore e o controle de versões do iOS compatível. Para isso, siga estas etapas:

  1. Adicione os seguintes platform e pod ao Podfile do projeto:

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.41.0'
    
  1. Abra uma janela de Terminal e execute pod update na pasta em que seu projeto do Xcode está.
    Isso gera um arquivo .xcworkspace que você vai usar para criar e executar o app.

Âncoras de nuvem persistentes

Conforme descrito em Hospedar um Cloud Anchor com persistência, é possível dar à âncora da nuvem um time to live de até 365 dias. O exemplo de código para usar âncoras de nuvem persistentes está disponível no diretório /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample do SDK do ARCore para iOS do GitHub (em inglês).

Próximas etapas