iOS용 지리정보 빠른 시작

ARCore Geospatial API 빠른 시작에서는 Xcode에서 Geospatial API를 보여주는 샘플 앱을 실행하는 방법을 보여줍니다.

Geospatial API로 자체 앱을 개발하는 방법에 관한 가이드는 iOS용 지리정보 개발자 가이드를 참조하세요.

Geospatial API에 관한 자세한 내용은 ARCore Geospatial API 소개를 참고하세요.

ARCore를 사용한 개발을 처음 하는 경우 시작하기를 참고하세요.

요구사항

기기 지원

ARCore와 호환됨을 인증받은 기기의 전체 목록은 지원되는 기기를 참고하세요.

소프트웨어

  • Xcode 버전 13 이상

  • Cocoapods 1.4.0 이상

  • iOS 11.0 이상을 실행하는 ARKit 호환 Apple 기기 (iOS 10.0 이상의 배포 대상, 샘플 앱 실행에 필요한 11.0 필요)

샘플 앱 설정

iOS용 ARCore SDK에 포함된 GeospatialExample 프로젝트에서는 Geospatial API를 호출하는 코드를 설명합니다.

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

  2. 터미널 또는 Finder 창을 열고 SDK를 클론하거나 다운로드한 폴더로 이동합니다.

  3. arcore-ios-sdk-master/Examples 폴더로 이동합니다.

  4. 예시 폴더를 열고 GeospatialExample 폴더를 선택한 후 열기를 클릭합니다.

Google Cloud 프로젝트 설정

시각 포지셔닝 시스템 (VPS)을 사용하려면 앱을 ARCore API에 사용 설정된 Google Cloud 프로젝트와 연결해야 합니다.

Google Cloud 프로젝트에서 ARCore API를 사용 설정해야 합니다. 프로젝트를 만들어야 하는 경우 다음 단계를 따르세요.

  1. Google Cloud Platform에서 프로젝트 만들기로 이동하세요.

  2. 적절한 프로젝트 이름을 입력하고 위치를 선택합니다.

  3. 만들기를 클릭합니다.

  4. 사이드바에서 API 및 AMP 서비스를 선택한 다음 라이브러리를 선택합니다.

  5. ARCore API를 검색하여 선택하고 사용 설정을 클릭합니다.

승인 설정하기

VPS에 지리정보 API를 호출하려면 샘플 앱에 승인이 필요하며 제한되지 않은 API 키를 사용할 수 있습니다. 제한된 API 키를 사용하는 경우 API 키와 연결할 번들 ID도 제공해야 합니다.

  1. Google Cloud 프로젝트에서 API 키 만들기의 설명에 따라 API 키를 가져옵니다.

  2. 이후 단계에서 붙여넣으면 API 키가 복사됩니다.

  3. Xcode의 GeospatialExample 샘플 앱에서 ViewController.m 파일을 열고 your-api-key를 검색합니다.

  4. API 키를 GARSession에 추가합니다. 아래와 같이 이전 단계에서 복사한 API 키를 텍스트 your-api-key(따옴표 사용) 위에 붙여넣습니다.

    self.garSession = [GARSession sessionWithAPIKey:@"your-api-key"
                                   bundleIdentifier:nil
                                              error:&error];
    

ARCore SDK 설정

GeospatialExample 앱은 필요한 ARCore SDK 및 iOS 버전으로 사전 구성된 Podfile와 함께 제공됩니다. 이러한 종속 항목을 설치하려면 터미널 창을 열고 Xcode 프로젝트가 있는 폴더에서 pod install를 실행합니다.

그러면 나중에 앱을 빌드하고 실행하는 데 사용할 .xcworkspace 파일이 생성됩니다.

샘플 앱 빌드 및 실행

  1. Xcode에서 GeospatialExample 작업공간 파일을 선택하고 Signing & Capabilities를 클릭합니다.

  2. 서명 자동 관리 체크박스를 선택합니다.

  3. Team 입력란에 팀 이름을 입력합니다.

    기본 Bundle Identifier(번들 식별자)를 사용하여 Xcode에서 앱을 실행할 수 있지만 프로덕션에서 자체 앱의 스텁으로 GeospatialExample을 사용하는 경우 이를 변경해야 합니다.

  4. 기기를 연결하여 샘플 앱을 실행합니다.

  5. .xcworkspace 파일에서 GeospatialExample 앱을 빌드하고 실행하여 기기에서 실행합니다.

    빌드 오류를 방지하려면 .xcodeproj 파일이 아닌 .xcworkspace 파일에서 빌드해야 합니다.

기기의 현재 지리정보 변환을 설명하는 디버그 정보와 함께 카메라 뷰가 표시됩니다. 주변 환경을 스캔할 때 VPS 현지화가 지원되는 지역에 있다면 이동할 때 위치 정확도 신뢰값이 변경될 수 있습니다.

ARCore가 기기의 위치와 방향을 확신할 때 지리정보 변환을 사용하여 현재 위치에 앵커를 배치할 수 있습니다.

VPS 정보를 사용할 수 없는 경우 위치 정확도가 너무 낮을 수 있습니다. 앱은 인터넷에 연결되어 있고 위치는 VPS에 알려져 있어야 합니다. 최상의 결과를 얻으려면 낮 동안 실외에서 (외부가 아닌) 샘플 앱을 실행하세요.

또한 VPS를 지원하지 않는 영역에 있거나 GPS 신호가 충분하지 않은 경우 앵커를 배치하기 위해 앱에서 신뢰도 임곗값을 조정해야 할 수 있습니다.

기준을 조정하려면 다음 단계를 따르세요.

  1. Xcode에서 ViewController.m 파일을 열고 다음 섹션으로 이동합니다.

    // Thresholds for 'good enough' accuracy. These can be tuned for the
    // application. We use both 'low'
    // and 'high' values here to avoid flickering state changes.
    static const CLLocationAccuracy kHorizontalAccuracyLowThreshold = 10;
    static const CLLocationAccuracy kHorizontalAccuracyHighThreshold = 20;
    static const CLLocationDirectionAccuracy kHeadingAccuracyLowThreshold = 15;
    static const CLLocationDirectionAccuracy kHeadingAccuracyHighThreshold = 25;
    
  2. 필요에 따라 값을 조정합니다. 값이 클수록 정확성이 낮습니다.

    정확도를 낮추면 앱에서 앵커를 배치할 때 위도가 더 높아집니다. 자세한 내용은 변환 정확도 조정을 참조하세요.

다음 단계

iOS용 지리정보 개발자 가이드를 검토하고 Geospatial API로 빌드를 시작해 보세요.