Skip to main content

측위정보 설정하기

측위 정보에 대한 항목은 SDK 설치 전 체크리스트 를 참조해주세요.

SDK 및 시스템 요구사항

OneS1ght SDK 는 다음의 환경에서 동작합니다.
SDK 지원되지 않는 기기 또는 OS인 경우 측위와 데이터 수집은 중단되지만 기존 앱은 정상적으로 동작합니다.

1. SDK 설치하기

OneS1ght iOS SDK 를 설치합니다.
1

패키지 추가 열기

Xcode 에서 [File] → [Add Package Dependencies…] 를 클릭해 주세요.
2

저장소 URL 입력

검색창에 아래 주소를 입력하고 [Add Package] 를 클릭해 주세요.
Dependency RuleUp to Next Major Version0.1.0 으로 둡니다.
3

타깃에 추가

[Add Package] 를 계속해서 클릭해 OneS1ght 라이브러리를 앱 타깃에 추가합니다.
4

확인

Xcode 의 [Package Dependencies] 에서 OneS1ght iOS SDK 추가를 확인할 수 있습니다.
Package.swift 로 붙이는 경우:

2. 위치 권한 요청

사용자의 동선을 수집하려면 UWB 모듈의 권한 승인이 필요합니다.
먼저 앱 타깃의 Info 탭(또는 Info.plist)에 권한 설명 두 개를 추가합니다.
위치 권한을 먼저 받습니다.
Nearby Interaction 권한은 SDK 로 확인합니다.
Nearby Interaction 권한이 없으면 UWB 모듈과 통신할 수 없습니다. CLLocationManagerDelegatelocationManagerDidChangeAuthorization 으로 허용 상태를 확인해주세요.
UWB 모듈 권한이 한 번 거부되면 정책상 앱에서 직접적으로 요청할 수 없습니다. 재요청시 설정 으로 유도해주세요.

3. SDK 초기화하기

앱에서 사용하는 생명주기에 따라 앱이 열릴 때 SDK 를 초기화하세요. YOUR_SDK_API_KEY OneS1ght 콘솔에서 제공하는 SDK API 키이며, YOUR_GEOSPACE_SDK_KEY 는 Geospace 의 SDK 키입니다.
루트 뷰의 .task 또는 Appinit 에서 호출합니다.
초기화 성공 로그 YOUR_TENANT_NAME 은 OneS1ght 에서 부여하는 조직의 이름입니다.

4. 프로필 연결

레포트 필터링 및 세그먼트 설정을 위해 지표 대상을 설정합니다. 지표 대상의 속성에는 제한이 없으며, 최초 지표 대상을 설정하면 서버가 고유 프로필 ID(profileId)를 반환합니다.
프로필 ID 를 분실하면 되돌릴 수 없습니다. 서버는 발급한 값을 돌려줄 뿐 앱을 대신해 보관하지 않으니 별도의 저장소를 사용하여 저장해 주세요.
프로필을 연결하지 않고 측위를 시작하는 경우 .notIdentified(E1004)가 발생되며 측위를 시작하지 않습니다.

5. 측위 공간 설정

사용자에게 측위하고자 하는 공간을 지정합니다. OneS1ght 에서는 테넌트(조직)에 다수의 건물이 존재할 수 있고 하나의 건물에는 다수의 이 있습니다. 즉 측위를 지정하기 위해서는 하나의 층이 선택되어야 합니다.
층의 내용을 변경시 콘솔 페이지의 공간 관리에서 변경 가능합니다.
변경된 내용은 refreshZones 호출로 갱신 가능합니다.

6. 진입 콜백 등록

층에 있는 특정 구역의 이벤트를 지정할 수 있습니다. 이벤트 형태는 커스텀으로 구현 가능합니다.
onDebugLog 는 initialize 보다 먼저 호출되어야 초기화 단계부터 디버깅을 로그를 확인하실 수 있습니다.

7. 측위 시작

층 진입준비(세션)가 완료되었을 경우 측위를 시작합니다.

8. 측위 종료

구역을 이탈했을 경우 측위를 멈춥니다. 이때 초기화·층 설정은 유지되어 begin 재호출로 언제든 재시작할 수 있습니다.

전체 예시 코드