iOS의 클라우드 앵커 빠른 시작

ARCore Cloud Anchor API 또는 ARCore Cloud Anchor 서비스는 iOS 앱에 클라우드 앵커 기능을 제공하므로 iOS 및 Android 기기의 사용자가 모두 AR 환경을 공유할 수 있습니다.

이 가이드에서는 다음을 수행하는 방법을 설명합니다.

  • 클라우드 앵커와 함께 작동하도록 개발 환경 설정
  • 샘플 앱에서 앵커 호스팅 및 확인해 보기

기본 요건

  • Xcode 버전 13.0 이상
  • CocoaPods를 사용하는 경우 CocoaPods 1.4.0 이상
  • iOS 12.0 이상을 실행하는 ARKit 호환 Apple 기기(iOS 12.0 이상 배포 타겟 필요)
를 통해 개인정보처리방침을 정의할 수 있습니다.

클라우드 앵커 사용

다음 단계에서는 클라우드 앵커 샘플 앱을 사용하여 ARCore 클라우드 앵커를 지원하는 앱을 구성하고 빌드하는 작업을 알아봤습니다.

Cloud Anchors 샘플 앱 가져오기

  1. GitHub에서 iOS용 ARCore SDK를 클론하거나 다운로드하여 샘플 앱 코드를 가져옵니다.

  2. 터미널 또는 Finder 창을 열고 복제한 폴더로 이동합니다. SDK를 다운로드할 수 있습니다

  3. 샘플 앱 코드는
    /arcore-ios-sdk-master/Examples/CloudAnchorExample에서 확인할 수 있습니다.

    영구 클라우드 앵커 샘플 앱 코드는 다음과 같습니다.
    /arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample입니다.

세션 설정

샘플 앱은 세션 설정의 일환으로 다음과 같은 중요한 작업을 실행합니다.

클라우드 앵커 ID 공유 설정

클라우드 앵커 샘플 앱은 Firebase를 사용하여 기기에서 사용할 수 있습니다. 자체 앱에서 다른 솔루션을 사용할 수 있습니다.

샘플 앱에서 Firebase 데이터베이스를 설정하려면 다음 단계를 따르세요.

  1. Firebase를 앱에 추가하는 방법에 관한 Firebase 안내를 따릅니다.
  2. 앱에 Firebase를 추가하는 과정에서 생성된 GoogleService-Info.plist 파일을 다운로드합니다.
  3. 샘플에 Firebase Storage를 사용 설정합니다.
    • Firebase Console로 이동하여 샘플 앱에 설정한 프로젝트를 선택합니다.
    • Database 패널을 선택합니다.
    • Realtime Database 옵션에서 Get Started를 클릭합니다.
    • Security rules for Realtime Database 메뉴가 열립니다.
      • 샘플을 실행하려면 Start in test mode를 선택합니다.
      • 게시할 앱에 Firebase를 사용하는 경우에는 더 제한적인 보안 규칙을 사용해야 합니다
  4. Xcode에서 앱 옆에 있는 GoogleService-Info.plist 파일을 추가합니다. Info.plist

ARCore API 설정

클라우드 앵커를 사용하려면 먼저 ARCore API를 확인합니다.

포드 업데이트 실행

CloudAnchorExample 앱은 필요한 ARCore SDK 및 iOS 버전으로 사전 구성된 Podfile와 함께 제공됩니다. 이러한 종속 항목을 설치하려면 다음 안내를 따르세요.

  1. 터미널 창을 열고 Xcode 프로젝트가 있는 폴더에서 pod update를 실행합니다.
    나중에 앱을 빌드하고 실행하는 데 사용할 .xcworkspace 파일이 생성됩니다.

앱에 ARCore SDK 추가를 참고하세요. 를 참조하세요.Podfile

  1. Xcode에서 프로젝트의 .xcworkspace 파일을 엽니다.

    빌드 오류를 방지하려면 .xcworkspace에서 빌드해야 합니다. 파일(.xcodeproj 파일 아님)입니다.

App Bundle ID 변경

Xcode에서 팀과 함께 앱에 서명할 수 있도록 앱의 번들 ID를 변경합니다.

앱 빌드 및 실행

  1. 기기를 연결하고 Xcode에서 앱을 실행합니다.

  2. (선택사항) 샘플 앱을 빌드하고 실행하는 경우 앱을 사용하여 Cloud 앵커를 호스팅하고 확인하는 방법에 관한 자세한 내용은 다음 섹션을 참고하세요.

샘플 앱 사용해 보기

  1. .xcworkspace 파일에서 샘플 앱을 빌드하고 실행하여 기기에서 실행합니다.

  2. 메시지가 표시되면 앱에 카메라 권한을 부여합니다. 그러면 ARKit이 카메라 앞의 평면을 감지하기 시작합니다.

  3. HOST를 탭하여 호스팅 모드로 전환합니다. 호스팅된 앵커를 공유하기 위한 룸 코드가 생성되어 화면에 표시됩니다.

  4. 평면을 탭하여 해당 평면에 클라우드 앵커 호스팅을 시작하세요.

    • 앱이 평면에 Andy Android 객체를 배치하고 앵커를 연결합니다.
    • 호스트 요청이 ARCore API 클라우드 엔드포인트로 전송됩니다. 호스트 요청에는 근처의 시각적 지형지물에 대한 앵커의 위치를 나타내는 데이터가 포함됩니다.
    • 앵커가 호스팅되면 이 공간에서 클라우드 앵커를 확인하는 데 사용되는 ID를 가져옵니다.
  5. 이전에 액세스할 수 있도록 RESOLVE 아이콘을 탭하고 방 코드를 입력하세요. 동일한 기기 또는 다른 기기를 사용하여 이 방에 호스팅된 클라우드 앵커입니다.

    • 해결 요청이 ARCore API 클라우드 엔드포인트로 전송됩니다.
    • 확인 요청에 클라우드 앵커 ID가 포함됩니다. ID가 성공하면 서버는 앵커 변환에 사용됩니다.
    • 샘플 앱은 변환을 사용하여 장면에 앵커를 추가하고 가상 객체를 렌더링할 수 있습니다

앱에 ARCore SDK 추가

자체 앱에서는 ARCore SDK 및 지원되는 iOS 버전 관리를 포함하도록 Podfile를 업데이트해야 합니다. 방법은 다음과 같습니다.

  1. 프로젝트의 Podfile에 다음 platformpod를 추가합니다.

        platform :ios, '11.0'
        pod 'ARCore/CloudAnchors', '~> 1.46.0'
    
를 통해 개인정보처리방침을 정의할 수 있습니다.
  1. 터미널 창을 열고 Xcode 프로젝트가 있는 폴더에서 pod update를 실행합니다.
    이렇게 하면 코드를 빌드하고 배포하는 데 사용하는 .xcworkspace 파일이 생성됩니다. 실행할 수 있습니다

영구 클라우드 앵커

지속성을 사용하여 Cloud Anchor 호스팅에 설명된 대로 클라우드 앵커에 최대 365일의 TTL을 부여할 수 있습니다. 영구 클라우드 앵커를 사용하는 샘플 코드는 GitHub의 iOS용 ARCore SDK/arcore-ios-sdk-master/Examples/PersistentCloudAnchorExample 디렉터리에서 확인할 수 있습니다.

다음 단계