Skip to main content

0.0.9

  • Galaxy S25+ 등 일부 기기에서 측위가 시작되지 않던 문제 수정(E4001 반복)

0.0.8

  • SDK 의 Gson R8 규칙 범위를 SDK 내부로 축소 — 앱 Gson 모델은 앱에 규칙 직접 추가
  • 연결이 끊길 때 보낸 요청이 다시 전송되어 이벤트·좌표·프로필이 중복되던 문제 수정

0.0.7

  • Breaking 내부 타입 공개 해제: ApiClient 생성자 · IdentityStore · SdkDefaults · MockPositioningProvider 등
  • Breaking ConfigChange.Companion(빈 companion) 삭제
  • Breaking PositioningProvider.applyZones 를 공개 계약에서 제거 — 구역은 apply(PositioningConfig(zones = …)) 로 전달
  • Breaking building(buildingId = …) → building(id = …) (매개변수 이름만, 위치 인자는 그대로)
  • Breaking 건물 없이 처음 setFloorMap(floor) 호출 시 SdkError.BuildingNotSet(E3001) 발생
  • Breaking SdkErrorCode 등 enum 을 가르는 when 에 else 추가 필요
  • permissions(activity) → requestPermission(activity)
  • getProfile() → fetchProfile()
  • putProfile() → replaceProfile()
  • send() → uploadPendingPositions()
  • empty() → discardPendingPositions()
  • ApiClient.DEFAULT_BASE_URL → OneS1ght.DEFAULT_BASE_URL
  • 옛 이름은 @Deprecated 로 계속 동작, 전체 목록은 SDK CHANGELOG 0.0.7 참고
  • FloorSession.onStopped 추가 — 세션 종료 이유(ENDED · ENGINE_FAILED) 전달
  • FloorSession.onFloorDetected 추가 — 엔진이 잡은 층 ID 전달
  • 커스텀 provider 도 onFloorDetected · onEmit 으로 구역 콜백 지원
  • 엔진이 꺼지면 자동 재시작, 실패 시 세션 종료 후 onStopped(ENGINE_FAILED)
  • 층 없이 begin() 해도 E3001 을 서버로 올리지 않도록 변경
  • identify 를 initialize 보다 먼저 호출 지원
  • 일시정지가 백그라운드에 다녀와도 유지되도록 변경(iOS 와 같음)
  • ApiError.message 를 영어 + 에러 코드로 변경
  • initialize 의 baseUrl 을 공간 조회에도 사용하도록 변경
  • 응답 항목 하나가 망가지면 목록 전체가 실패하던 문제 수정
  • refreshZones() 시 체류 시간이 초기화되던 문제 수정
  • 좌표 전송 중 empty() 호출 시 앱 종료되던 문제 수정
  • reset() 뒤 옛 건물로 층을 조회하던 문제 수정

0.0.6

  • SdkErrorCode 를 else 없이 가르는 when 은 BLUETOOTH_OFF 가지 추가 필요
  • Bluetooth 꺼짐을 권한 거부(E2003)와 나눠 E2004 로 기록(iOS 와 같음)

0.0.5

  • UwbPositioningProvider(context) 로 앱이 측위 provider 직접 생성 지원
  • UwbPositioningProvider.isSupported(context) 로 기기 측위 가능 여부 확인 추가
  • provider 관찰 상태(phase · latestPosition · detectedFloorId 등)와 StateFlow 추가
  • provider 훅(onFloorDetected · onEngineError · onZoneEvent · onLog) 추가
  • startDetection() · stopDetection() 으로 엔진만 먼저 기동 지원
  • kotlinx-coroutines-core(1.9.0)를 api 의존으로 변경
  • iOS 와 달리 license 미노출 — 엔진 라이선스는 SDK 가 콘솔 값으로 설정

0.0.4

  • 패키지 minSdk 를 37 → 26(Android 8.0)으로 낮춤 — 앱 minSdk 되돌려도 됨
  • Android 17 미만에서는 측위만 꺼지고 앱은 정상 동작(E2001)

0.0.3

  • 패키지 minSdk 를 37 로 올림 — 0.0.4 이상 사용 권장
  • 측위 엔진을 iOS(0.1.23)와 같은 통합 엔진으로 교체
  • 엔진이 BLE 로 층을 스스로 찾음 — setFloorMap 은 구역 이벤트용 선택 사항
  • 구역 판정을 엔진 지오펜스로 변경 — 콘솔 존 판정 파라미터 미사용
  • 권한 요청에 BLUETOOTH_SCAN 추가
  • 로그 코드 E3007 · E3008 · E3009 · E4004 추가, E4003 미발생

0.0.2

  • 배포 좌표를 com.ones1ght.sdk:android 로 변경 — mavenCentral() 만 필요
  • R8/ProGuard 릴리즈 빌드 실패 가능 — 0.0.4 이상 사용 권장
  • Maven Central 첫 배포 · 측위 엔진 AAR 내장
  • -sources.jar · -javadoc.jar 함께 배포

0.0.1

  • Android SDK 첫 공개 — iOS SDK(0.1.23)와 같은 기능·서버 계약
  • Kotlin suspend 와 Java Callback<T> 지원
  • 측위는 Android 17(API 37) 이상 · UWB DL-TDoA 지원 기기에서 동작
  • iOS 와 달리 initialize 에 Context 인자 필요
  • iOS 와 달리 권한 요청에 Activity 인자 필요