이 문서는 v0.0.1 기준입니다. 판별 값은
OneS1ght.SDK_VERSION 으로 확인할 수 있습니다.OneS1ght 는 앱 전체에 하나뿐인 object 진입점입니다 — 인스턴스를 만들지 않으며 모든 API 를 직접 호출합니다.
비동기 API 는 같은 이름으로 두 가지 형태가 있습니다 — Kotlin 은 suspend fun, Java 는 마지막 인자에
Callback<T> 를 받는 형태입니다. 아래 표는 Kotlin 형태로 적었습니다.
생명주기
initialize 의 파라미터:
기본
baseUrl 은 https://console.ones1ght.com/api/sdk/v1 입니다.
측위 세션 — FloorSession
콜백
세션 콜백은FloorSession 인스턴스에, 디버그 로그는 OneS1ght 에 답니다. 모든 콜백은 메인 스레드에서 호출됩니다.
리스너는 fun interface 라 Kotlin 에서는 ZoneListener { zone -> … }, Java 에서는 람다로 등록합니다.
ConfigChange — 콘솔 변경
LogLevel — 로그 등급
import co.onecheck.ones1ght.android.runtime.LogLevel 로 가져옵니다. 선언 순서대로 비교할 수 있어
level >= LogLevel.WARN 처럼 걸러낼 수 있습니다.
공간 조회
엔드포인트 하나당 메서드 하나이며, 목록과 단건이 짝을 이룹니다. 모두suspend 입니다.
층 지정
프로필
고객사 회원 ID 는 서버로 오지 않습니다 — 매핑은 고객사만 보관합니다.
데이터 전송
좌표는 300건 또는 60초 중 먼저 도달하는 쪽에서 전송됩니다. 백그라운드 진입 시와end() 시에도 남은 좌표를 보냅니다.
상태 조회
Java 에서는 getter 로 읽습니다 —
OneS1ght.isInitialized(), OneS1ght.getDeviceAvailability(), OneS1ght.getGoogleMapKey().
에러 — SdkError
SdkError 는 SDK 자체가 던지는 5가지입니다. 통신 실패는 ApiError(co.onecheck.ones1ght.android.network)로 옵니다.
두 타입 모두 Exception 하위 클래스이며 .code.code 로 에러 코드 문자열을 꺼낼 수 있습니다.
- Kotlin
- Java
측위 런타임(
E4001E4004)과 공간 설정(E3001E3006), 권한(E2003)은 throw 되지 않고 로그로만 남습니다 —
onDebugLog 또는 콘솔 로그 분석기에서 확인하세요. 전체 목록
모델
모델은co.onecheck.ones1ght.android.model 패키지에 있습니다.
Coordinates — 실시간 좌표
Building · Floor — 건물·층
Locator · FloorLocators — 로케이터
Zone — 구역
판정 파라미터는 콘솔 공간 관리 → 구역 선택 → SDK 영역판정에서 구역마다 설정합니다
(설정 방법). Android 는 콘솔에서 받은 구역 도형을 기기에서 직접 대조해 판정합니다.
Trigger — 개인화 액션
MockPositioningProvider — 테스트용
co.onecheck.ones1ght.android.positioning 패키지에 있으며, session.begin(provider) 로 주입해 UWB 없이 SDK 파이프라인을
확인합니다. ZoneEventStatus 는 ENTER · DWELL · EXIT 입니다.
스레딩
- Kotlin
suspendAPI 는 어느 코루틴에서 불러도 됩니다. SDK 가 내부에서 스레드를 맞춥니다. identify·empty·pause·resume은 메인 스레드에서 호출합니다.- 콜백(
onPosition등)과 JavaCallback결과는 메인 스레드에서 호출됩니다 — UI 갱신을 바로 해도 안전합니다.