콘텐츠로 이동

변경 로그


ft-sdk

1.7.5 (2026/08/16)

  1. OkHttp WebSocket 핸드셰이크 RUM Resource 수집을 추가했습니다. FTRUMConfig.setEnableTraceUserResource(true)를 활성화하면 ft-plugin >= 1.3.8 사용 시 자동으로 수집되며, FTWebSocket.newWebSocket(...) 또는 FTWebSocket.wrap(...)를 통해 수동으로 연동할 수도 있습니다. 데이터에 resource_type=websocket, resource_websocket_collection_level=handshake, resource_websocket_handshake_state(success, rejected, failed)가 추가됩니다.
  2. 백그라운드 컴포넌트가 첫 번째 Activity보다 먼저 시작될 때 콜드 스타트 Action의 app_launch_type 분류가 부정확하고 시작 시간에 기기의 딥 슬립 시간이 포함되는 문제를 수정했습니다.
  3. FTRUMConfig.setIssueDataProvider(...)를 추가하여 자동으로 수집된 Crash 및 ANR RUM Error에 사용자 정의 필드를 추가할 수 있도록 지원합니다. 기록에서 복구된 ANR 데이터도 포함됩니다.
  4. Android 11(API 30) 이상에서 치명적 ANR 복구 기능을 추가했습니다. FTRUMConfig.setEnableTrackAppANR(true)를 활성화하면 SDK는 프로세스가 이후에 시작될 때 치명적 ANR을 복구하고 원래 RUM View 연결을 유지합니다. Android 10 이하에서는 실시간 watchdog/native ANR 수집을 계속 사용하며, Android 11 이상에서는 비치명적 실시간 ANR을 수집하지 않습니다.
  5. watchdog ANR이 동일한 SDK 수명 주기 내에서 중복 보고되고, FTSdk.shutDown() 호출 시 감지 스레드가 제때 종료되지 않는 문제를 수정했습니다.
  6. WebView Browser Log 수집을 추가했습니다. FTLoggerConfig.setEnableWebViewLog(true)로 활성화할 수 있으며, 로그 필터링, 캐시 업로드, FTLoggerConfig.setEnableLinkRumData(...) RUM 연결 및 원격 logEnableWebViewLog 구성을 지원합니다.
  7. WebView host 구성을 최적화했습니다. FTSDKConfig.setAllowWebViewHost(...)를 추가하여 WebView RUM과 Log의 host 범위를 통합 제어하며, FTRUMConfig.setAllowWebViewHost(...)는 더 이상 사용하지 않습니다.
  8. Session Replay 중지 후에도 WebView와 Activity를 계속 보유하여 발생하는 메모리 누수를 수정했습니다.

1.7.4 (2026/07/15)

  1. 실험적 Android RUM Heatmap 지원을 추가했습니다. RUM 데이터에 display, action_position, action_target이 추가됩니다. 리플레이 요소 연결에는 ft-session-replay >= 0.1.7이 필요합니다.
  2. 언어 환경 관련 파싱 문제를 수정하고 사용자 정의 로그 콘솔 출력의 내결함성을 개선했습니다.

1.7.3 (2026/07/02)

  1. FTSdk.setAutoSync(boolean)을 추가하여 SDK 초기화 후 캐시 데이터 자동 동기화를 동적으로 활성화하거나 비활성화할 수 있도록 지원합니다.
  2. FTLoggerConfig.setLogLevelFilters가 warn 및 warning 로그 레벨 필터 값을 일관되지 않게 처리하는 문제를 수정했습니다.
  3. Native Crash 및 ANR의 logcat 구성 적용 문제를 수정하여 각각 nativeCrashLogCatSetting과 anrCrashLogCatSetting을 올바르게 사용하도록 했습니다.
  4. 시작 단계의 캐시 수량 초기화와 파일 캐시 크기 갱신 로직을 최적화하여 SDK 시작 시 메인 스레드가 차단되지 않도록 했습니다.
  5. 파일 캐시 크기 통계 방식을 개선하고, 지속적 증분 메타데이터를 사용하여 대용량 FileStore 시나리오에서 캐시 상한 판단 정확성과 쓰기 성능을 향상했습니다.
  6. 전체 캐시 크기 제한을 활성화할 때 RUM 캐시 전략의 잠금 경합을 최적화하여 고동시성 FileStore 쓰기 안정성을 높였습니다.
  7. 원격 구성 로그 표시를 개선하여 rumAllowWebViewHost, logLevelFilters 등의 배열 필드가 실제 내용을 출력하도록 했습니다.

1.7.2 (2026/05/20)

  1. 블랙리스트 필터링 기능을 추가했습니다. 로컬 캐시에 쓰기 전에 Logging 및 RUM 데이터를 필터링할 수 있습니다. 규칙은 FTSDKConfig.setDataFilters로 앱 내에서 구성하거나, Guance 워크스페이스의 블랙리스트에서 자동으로 가져올 수 있으며 두 방식이 동시에 적용됩니다. 이 기능은 기본적으로 활성화되어 있으며 FTSDKConfig.setEnableDataFilter(false)로 끌 수 있습니다. 필터 규칙은 LineDataModifier 이후에 실행됩니다.
  2. 공용 캐시 크기 제한 설정 FTSDKConfig.enableLimitWithCacheSize, FTSDKConfig.setCacheDiscard, CacheDiscard를 추가했습니다. 기존 enableLimitWithDbSize, setDbCacheDiscard는 호환성을 위해 유지되지만 새 인터페이스로 마이그레이션할 것을 권장합니다.
  3. 파일 캐시 기능 FTSDKConfig.enableFileDataStore()를 추가하여 동기화 캐시와 RUM 집계 데이터에 사용하고, 기존 캐시와 호환되는 마이그레이션 경로를 제공합니다.
  4. ft-sdk는 더 이상 ft-session-replay에 강하게 의존하지 않습니다. Session Replay를 활성화하지 않는 앱은 ft-session-replay 의존성을 추가로 도입할 필요가 없습니다.
  5. 콜드 스타트 Action에 app_launch_type 필드를 추가하여 포그라운드 시작과 백그라운드 시작을 구분합니다.
  6. RUM 폴백 View 데이터를 추가했습니다. ApplicationLaunch, BackgroundView, RootView 시나리오에서 실제 View 요약 레코드를 생성하여 시작, 백그라운드 및 전경 View가 없는 RUM 이벤트가 임의의 view_id와 연결될 수 있도록 합니다.
  7. 데이터 동기화 전략을 최적화했습니다. RUM 데이터를 우선 동기화하고 데이터 유형별로 재시도 및 백오프 상태를 분리하여 로그 동기화가 RUM 데이터 보고에 영향을 주는 상황을 줄였습니다.
  8. 사용자 정의 Resource 속성이 SDK가 계산한 duration을 덮어쓸 수 있는 문제를 수정하고, 비정상 폴백 시간에 대해 음수 값 방지 보호를 적용했습니다.
  9. Session Replay 업로드 재시도 및 업로드 주소 검증 로직을 수정하여 잘못된 주소가 반복 업로드를 유발하지 않도록 하고, 재시도 가능한 실패는 백오프 정책에 따라 처리되도록 했습니다.

1.7.1 (2026/04/30)

  1. View RUM 메트릭 view_long_task_rate를 추가하여 View 수명 주기 내 Long Task 총 시간 비율을 집계하며 최대값은 1입니다.
  2. 크래시 RUM Error 메트릭 foreground_crash_free_duration 및 background_crash_free_duration을 추가하여 포그라운드와 백그라운드의 무-크래시 실행 시간을 구분합니다.
  3. Resource 네트워크 스냅샷 필드인 network_available, network_validated, network_downlink_kbps, network_uplink_kbps, network_signal_strength를 추가했습니다.
  4. SDK 데이터 동기화는 기본적으로 deflate 압축을 사용하며 FTSDKConfig.setCompressIntakeRequests(false)로 끌 수 있습니다.
  5. ft-sdk와 Session Replay 모듈 간 버전 의존성 제약을 수정하여 통합 호환성 검증 정확도를 높였습니다.

1.7.0 (2026/04/17)

  1. Session Replay 기능을 추가했습니다. WebView Session Replay, DCloud WebView 및 WebView 컨테이너 전체 스냅샷 키프레임 수집을 지원합니다.
  2. Session Replay와 RUM 컨텍스트 연결 기능을 추가했습니다. WebView 컨테이너와 로드된 HTML 콘텐츠의 컨텍스트를 연결할 수 있습니다.
  3. Session Replay 오류 샘플링 기능을 추가하고 원격 구성을 통해 Session Replay를 동적으로 제어할 수 있도록 지원합니다.
  4. Session Replay 이미지 리소스 업로드 기능을 추가하고 userAgent, appVersion 등 매개변수 전달 및 동기화 체인 어댑테이션을 보완했습니다.
  5. Session Replay 초기화, 샤딩 프레임 보정, 프레임 생성 및 소비, 지연 쓰기, 디스크 쓰기 제한 등의 로직을 최적화하여 녹화 및 동기화 안정성을 높였습니다.
  6. WebView 데이터 손실, 비가시 시나리오 처리 이상, 조기 쓰기로 인한 화이트 스크린, 낮은 버전 OkHttp 동기화 불가, Bitmap 재활용으로 인한 녹화 실패 등의 문제를 수정했습니다.
  7. 일부 컨트롤이 레이아웃 완료 전에 관련 메서드를 호출하여 발생하는 크래시를 수정하고 전반적인 안정성과 호환성을 개선했습니다.

1.6.17 (2026/3/25)

  1. 1.6.16 버전에서 도입된 원격 동적 구성이 최초 로드 시 적용되지 않는 문제를 수정했습니다.
  2. 사용자 정의 Trace Header 처리를 위한 TraceContext 및 TraceContext.Simple을 추가했습니다. HeaderHandler.getTraceContext(Request)를 재정의하여 headers, traceId, spanId를 한 번에 제공할 수 있으며 기존 getTraceHeader, getTraceID / getSpanID 구현과 완전히 호환됩니다.
  3. FTSdk.setDatakitUrl(url), FTSdk.setDatawayUrl(datawayUrl, clientToken)을 통해 전송 주소를 동적으로 변경할 수 있습니다.

1.6.16 (2026/1/08)

  1. globalContext 및 속성 key에 잘못된 문자 필터링을 추가했습니다.
  2. resource_type 지원 범위를 확장하여 image, media, font, CSS, JS, native 유형을 추가했습니다.
  3. FTSDKConfig.setRemoteConfigurationCallBack(FTRemoteConfigManager.FetchResult), FTSdk.updateRemoteConfig(int remoteConfigMiniUpdateInterval, FTRemoteConfigManager.FetchResult result)를 통해 원격 변수를 사용자 정의 파싱 및 구성할 수 있습니다.
  4. Resource에 resource_http_protocol, resource_request_size, resource_connection_reuse 필드를 추가했습니다.
  5. 콜드 스타트 시간 메트릭을 세분화하여 app_pre_application_init_time, app_application_init_time, app_first_frame_init_time을 추가했습니다.
  6. OkHttp 3.12 이상 버전에 대한 호환 지원을 추가했습니다.
  7. Resource 요청 시작 시간이 부정확한 문제를 수정했습니다.
  8. SDK 종료 과정에서 Action 및 View를 가져올 때 간헐적으로 발생하는 null 포인터 예외를 수정했습니다.
  9. 오류 스택 형식을 최적화하고 특정 시나리오에서 줄바꿈 오류 문제를 수정했습니다.
  10. 앱이 백그라운드에 있을 때 제한된 Long Task 모니터링 기능을 추가했습니다.
  11. 앱 백그라운드 상태에서의 Session 갱신 메커니즘을 최적화했습니다.
  12. Action, View, Resource의 나노초 단위 소요 시간 계산 로직을 최적화했습니다.

1.6.15 (2025/12/03)

  1. FPS 모니터링 메커니즘을 최적화했습니다. 메인 스레드에서 시작하며 앱이 백그라운드로 진입하면 자동으로 모니터링을 중지합니다.
  2. 4K가 넘는 긴 로그 출력 메커니즘을 최적화하여 로그 가독성과 완전성을 개선했습니다.
  3. View 컨텍스트에서 resource, long task, error 생성 로직을 최적화했습니다.
  4. View 생성 속도를 높이고 동일한 view_id를 가진 트래픽 데이터를 줄였습니다.
  5. 하위 프로세스에서 ActivityLifecycleCallbacks 제한을 제거하여 수명 주기 리스너가 더 완전하게 동작하도록 했습니다.
  6. View의 간헐적 데이터 업데이트 손실 문제를 수정했습니다.
  7. 비동기 네트워크 요청으로 인한 세션 갱신 이상을 수정했습니다.
  8. SDK shutdown 후 다시 초기화해도 유휴 상태 DB 해제가 트리거되지 않는 문제를 수정했습니다.

1.6.14 (2025/08/20)

  1. ContentProvider를 사용하여 다중 프로세스 데이터 수집의 고부하 시나리오 호환 문제를 최적화했습니다.
  2. SDK AndroidMainfest에서 android.permission.READ_PHONE_STATE 선언을 제거했습니다. 통합 측에서 실제 상황에 따라 직접 추가해야 합니다. 권한 사용 설명은 통합 문서를 참조하세요.
  3. 하위 프로세스의 데이터 동기화를 제한하고, 하위 프로세스에서 수집한 데이터는 메인 프로세스가 업로드합니다.

1.6.13 (2025/08/10)

  1. 사용자 정의 사용자 작업 추적을 지원하는 FTRUMConfig.setActionTrackingHandler를 추가했습니다. 이 핸들러를 통해 개발자는 RUM 데이터의 사용자 작업(앱 시작, 클릭) 추적 방식을 사용자 정의할 수 있습니다. 작업 이름을 수정하거나 사용자 정의 속성을 추가하거나 특정 작업 추적을 건너뛸 수 있습니다.
  2. 사용자 정의 Activity 페이지 추적을 지원하는 FTRUMConfig.setViewActivityTrackingHandler를 추가했습니다. 이 핸들러를 통해 개발자는 RUM 데이터의 Activity 페이지 추적 방식을 사용자 정의할 수 있습니다. 페이지 이름을 수정하거나 사용자 정의 속성을 추가하거나 특정 Activity 추적을 건너뛸 수 있습니다.
  3. 사용자 정의 Fragment 페이지 추적을 지원하는 FTRUMConfig.setViewFragmentTrackingHandler를 추가했습니다. 이 핸들러를 통해 개발자는 RUM 데이터의 Fragment 페이지 추적 방식을 사용자 정의할 수 있습니다. 페이지 이름을 수정하거나 사용자 정의 속성을 추가하거나 특정 Fragment 추적을 건너뛸 수 있습니다.
  4. FTRUMGlobalManager.addAction에 userid 등 bindUserData 바인딩 관련 정보가 누락되던 문제를 수정했습니다.
  5. View의 Fragemnt에 load_time 데이터 메트릭을 추가했습니다.
  6. 현재 view의 로드 시간을 지정하는 FTRUMGlobalManager.updateTime을 추가했습니다.
  7. OkHttp 3.12.x 버전 호환성을 개선했습니다.
  8. FTRUMConfig.appendRUMGlobalContext로 추가한 태그는 세션 중에 업데이트할 수 있습니다.

1.6.12 (2025/06/11)

  1. Android SDK를 통해 WebView 데이터를 수집할지 여부를 구성하는 FTRUMConfig.setEnableTraceWebView를 추가했습니다. FTRUMConfig.setAllowWebViewHost로 필터링할 host 주소를 제어할 수 있습니다.
  2. 로컬 네트워크 오류를 필터링할 수 있는 ContentHandlerHelperEx.onExceptionWithFilter를 추가했습니다.
  3. 원격 조건부 구성 기능을 활성화하는 FTSDKConfig.setRemoteConfiguration을 추가했습니다. 원격 제어를 활성화한 후 최소 업데이트 간격을 설정하는 FTSDKConfig.setRemoteConfigMiniUpdateInterval을 추가했습니다.

1.6.11 (2025/05/15)

  1. Fragment view 데이터 수집을 지원하는 FTRUMConfig.setEnableTraceUserViewInFragment를 추가했습니다. 기본값은 false입니다.
  2. 데이터 쓰기 대체를 지원하고 데이터 마스킹을 지원하는 FTSDKConfig.setLineDataModifier, FTSDKConfig.setDataModifier를 추가했습니다.
  3. 오류 샘플링을 지원하는 FTRUMConfig.setSessionErrorSampleRate를 추가했습니다. setSamplingRate에 의해 샘플링되지 않은 경우 오류 발생 시 1분 전 RUM 데이터를 샘플링하여 수집할 수 있습니다.
  4. FTSDKConfig.setEnableAccessAndroidID(false)일 때 로컬 임의 UUID를 device_uuid로 사용합니다.
  5. 고빈도 로그 쓰기를 최적화하고 데이터 동기화 및 데이터 유휴 종료 로직을 개선했습니다.

1.6.10 (2025/04/18)

  1. OkHttp request에 고유 ResourceID를 추가하는 FTSDKConfig.setEnableOkhttpRequestTag를 추가하여 동일한 요청의 고동시성에서 trace_id, span_id가 잘못 매칭되는 문제를 해결합니다. ft-plugin 1.3.5 이상 버전에서 ResourceID 자동 추가를 지원합니다.
  2. RUM 구성을 여러 번 초기화하는 시나리오에서 다른 크래시 수집 SDK와 순환 호출이 발생하는 문제를 수정했습니다.
  3. 네이티브 페이지에서 WebView 페이지로 이동할 때 네이티브 페이지 이름으로 view_referrer를 채웁니다.
  4. 네트워크 요청 IOException 재발생 시 원래 타입이 변경되는 문제를 수정했습니다.
  5. FTSDKConfig에 setProxy, setProxyAuthenticator, setDns를 추가하여 OkHttp 데이터 동기화 네트워크 요청에 대해 Proxy, ProxyAuthenticator, Dns를 구성할 수 있습니다.
  6. OkHttp 데이터 동기화 네트워크 요청에서 알려진 hostName DNS IP 라운드 로빈 연결을 지원합니다.

1.6.9 (2025/03/07)

  1. isAppForeground 판별 메커니즘을 수정하여 개인정보 민감 정보 탐지에 적합하도록 했습니다.
  2. resource 데이터 필드 resource_first_byte_time, resource_dns_time, resource_download_time, resource_connect_time, resource_ssl_time을 추가했습니다. Guance에서 Resource 소요 시간 강화 표시를 지원하며, 애플리케이션 성능 모니터링(APM) 플레임 그래프에서 시간 축 정렬을 지원합니다.
  3. 동기화 재시도 메커니즘을 최적화하고 FTSDKConfig.setDataSyncRetryCount(0)으로 데이터를 직접 버리는 구성 옵션을 제거했습니다.
  4. 웹 숫자 부동소수점 유형 데이터와 호환되도록 FTSDKConfig.enableDataIntegerCompatible을 기본 활성화합니다.
  5. RUM 구성을 여러 번 초기화하는 시나리오에서 크래시 데이터가 중복 생성되는 문제를 수정했습니다.

1.6.8 (2025/01/21)

  1. RUM 구성을 여러 번 초기화할 때 FPS 수집이 부정확한 문제를 수정했습니다.
  2. 이전 버전 캐시 데이터 업그레이드에 대한 내결함성을 추가했습니다.
  3. FTRUMConfig.setOkHttpTraceHeaderHandler를 FTTraceConfig.setOkHttpTraceHeaderHandler로 마이그레이션했습니다.
  4. WebView SDK 내부 정보를 강화하고 성능을 최적화했습니다.

1.6.7 (2025/01/10)

  1. 사용자 정의 FTTraceInterceptor.HeaderHandler와 RUM 데이터 연결을 지원합니다.
  2. FTRUMConfig.setOkHttpTraceHeaderHandler를 통해 ASM이 작성한 FTTraceInterceptor.HeaderHandler 내용을 변경할 수 있으며, FTRUMConfig.setOkHttpResourceContentHandler를 통해 ASM이 작성한 FTResourceInterceptor.ContentHandlerHelper 내용을 변경할 수 있습니다.
  3. 일부 OS에서 system.exit를 호출하여 크래시 데이터를 수집할 수 없는 시나리오에 적합하도록 크래시 수집 기능을 최적화했습니다.
  4. 태그가 간헐적으로 빈 문자열이 되어 데이터가 정상적으로 보고되지 않는 문제를 수정했습니다.
  5. ASM OkHttpListener EventListener 재정의 로직을 최적화하고 원래 프로젝트의 EventListener 이벤트 매개변수 전달을 유지하도록 지원합니다.

1.6.6 (2024/12/27)

  1. 네트워크 상태 및 유형 획득을 최적화하여 ethernet 유형의 네트워크 유형 표시를 지원합니다.
  2. 네트워크가 없는 상태에서 데이터 쓰기로 인해 데이터베이스가 자주 닫히는 문제를 최적화했습니다.
  3. 로그 및 RUM에서 오래된 데이터를 버릴 때 데이터 항목 수와 설정된 항목 수의 편차가 발생하는 문제를 수정했습니다.
  4. TV 장치 키 이벤트에 적응하고 비 TV 장치 태그를 제거했습니다.
  5. RUM 데이터 캐시 항목 수 상한을 제한하는 FTRUMConfig.setRumCacheLimitCount(int)를 지원합니다. 기본값은 100_000입니다.
  6. 총 캐시 크기를 제한하는 FTSDKConfig enableLimitWithDbSize(long dbSize)를 지원합니다. 활성화하면 FTLoggerConfig.setLogCacheLimitCount(int) 및 FTRUMConfig.setRumCacheLimitCount(int)는 더 이상 적용되지 않습니다.
  7. 장치 무조작 시나리오에서 Session 갱신 규칙을 최적화했습니다.

1.6.5 (2024/12/24)

  1. WebView가 AOP 과정에서 매개변수가 null일 때의 경고를 완화했습니다.
  2. 앱 백그라운드에서 긴 Session 갱신 메커니즘을 최적화했습니다.

1.6.4 (2024/12/03)

  1. API 24 이상에서 앱 시작 시간 통계를 최적화했습니다.
  2. FTRUMConfig.setEnableTrackAppUIBlock(true, blockDurationMs)를 통해 감지 시간 범위를 설정할 수 있습니다.

1.6.3 (2024/11/18)

  1. 사용자 정의 addAction의 고빈도 호출 시 성능을 최적화했습니다.
  2. FTSDKConfig.setCompressIntakeRequests를 사용하여 동기화 데이터에 대해 deflate 압축을 구성할 수 있습니다.

1.6.2 (2024/10/24)

  1. RUM에 addAction 메서드를 추가하여 property 확장 속성과 빈번한 연속 데이터 보고를 지원합니다.

1.6.1 (2024/10/18)

  1. RUM에서 사용자 정의 startView를 단독 호출할 때 모니터링 지표 FTMetricsMTR 스레드가 회수되지 않는 문제를 수정했습니다.
  2. FTSdk.appendGlobalContext(globalContext), FTSdk.appendRUMGlobalContext(globalContext), FTSdk.appendLogGlobalContext(globalContext)를 통해 동적 속성을 추가할 수 있습니다.
  3. FTSdk.clearAllData()로 보고되지 않은 캐시 데이터를 정리할 수 있습니다.
  4. SDK setSyncSleepTime 최대 제한을 5000ms로 연장했습니다.

1.6.0 (2024/08/18)

  1. 데이터 저장 및 동기화 성능을 최적화했습니다. (이전 버전에서 1.6.0으로 업그레이드하려면 FTSDKConfig.setNeedTransformOldCache를 구성하여 이전 데이터 호환 동기화가 필요합니다.)
  2. ft-plugin 사용 시 Log.w(String,Throwable) 호출로 발생하는 예외 문제를 수정했습니다.

1.5.2 (2024/07/10)

  1. Error network_error에 로컬 네트워크 오류 유형 안내를 추가하여 Resource 데이터에서 resource_status=0 시나리오를 보완합니다.
  2. setEnableTrackAppCrash(false)일 때 uncaughtException 재전달 문제를 수정했습니다.

1.5.1 (2024/06/19)

  1. Java Crash 및 ANR에 다른 스레드의 코드 스택을 추가했습니다.
  2. Java Crash, Native Crash, ANR에 추가 logcat 구성 기능을 추가했습니다.
  3. 긴 세션이고 action 업데이트가 없는 시나리오에서 session_id가 빈번하게 갱신되는 문제를 수정했습니다.

1.5.0 (2024/06/03)

  1. RUM resource 네트워크 요청에 원격 IP 주소 해석 기능을 추가했습니다.
  2. RUM SampleRate를 켠 후 고동시성 네트워크 요청으로 발생하는 배열 스레드 안전 문제를 수정했습니다.
  3. ConnectivityManager.registerDefaultNetworkCallback 메서드 내결함성을 최적화했습니다.
  4. 웹 데이터 유형 충돌 문제를 처리하기 위해 라인 프로토콜 Integer 데이터 호환 모드를 추가했습니다.
  5. 자동 수집 Action click에서 컨트롤 리소스 이름 ID 획득을 최적화했습니다.
  6. SDK config 구성 읽기 예외 문제에 대한 내결함성을 최적화했습니다.

1.4.6 (2024/05/15)

  1. SDK 초기화 내결함성을 최적화했습니다.
  2. 로그에 Status.Debug 유형을 추가했습니다.
  3. 콘솔 로그 수집 레벨 매핑을 조정했습니다. Log.i -> info, Log.d -> debug.
  4. FTLogger 사용자 정의 로그에서 사용자 정의 status 필드를 지원합니다.

1.4.5 (2024/04/26)

  1. 중복 초기화 호환 처리를 최적화했습니다.
  2. c/c++ 크래시 수집 데이터 동기화 로직을 최적화하여 특정 시나리오에서 예기치 않은 중단으로 인한 교착 상태를 방지했습니다.
  3. startAction Property 속성 쓰기 로직을 최적화하여 스레드 안전 접근 문제를 방지했습니다.

1.4.4 (2024/04/01)

  1. 데이터베이스 연결 내결함성 보호를 추가했습니다.
  2. setOnlySupportMainProcess true일 때 하위 프로세스 구성이 부분적으로 적용되지 않는 문제를 수정했습니다.
  3. RUM에서 View 수집을 활성화하지 않으면 Crash가 rethrow되지 않는 문제를 수정했습니다.

1.4.3 (2024/03/22)

  1. Dataway 및 Datakit 주소 업로드를 지원합니다.
  2. Action, View, Resource, LongTask, Error 유형의 RUM 데이터 전송을 지원합니다.
    • View, Action 페이지 이동 및 컨트롤 클릭 작업 자동 수집에는 ft-plugin이 필요합니다.
    • Resource 자동 수집은 OkHttp만 지원하며 ft-plugin이 필요합니다.
    • Error의 Native Crash 및 ANR은 ft-native가 필요합니다.
  3. Log 데이터 전송을 지원합니다. 콘솔 자동 기록에는 ft-plugin이 필요합니다.
  4. 링크 HTTP header propagation을 지원합니다. OkHttp만 지원하며 ft-plugin이 필요합니다.
  5. 데이터 동기화 매개변수 구성(요청 항목 수, 동기화 간격, 로그 캐시 항목 수)을 지원합니다.
  6. SDK 내부 로그를 파일로 변환하는 기능을 지원합니다.

더 많은 변경 로그

ft-session-replay

0.1.8 (2026/08/16)

ft-session-replay

  1. Session Replay 리소스 검사 및 업로드 시 FTSessionReplayConfig.enableLinkRUMKeys(...)로 선택한 RUM globalContext를 투과적으로 전달하여 리소스 요청이 해당 RUM 컨텍스트를 유지하도록 합니다.
  2. Session Replay 중지 후에도 WebView와 Activity를 계속 보유하여 발생하는 메모리 누수를 수정했습니다.

ft-session-replay-material

  1. 변경 사항 없음.

ft-session-replay-compose

  1. 변경 사항 없음.

0.1.7 (2026/07/15)

ft-session-replay

  1. 실험적 Android Heatmap의 Session Replay 요소 연결 기능을 추가했습니다. ft-sdk >= 1.7.4와 함께 사용해야 합니다.
  2. 멀티터치 및 제스처 취소 시나리오에서 Pointer ID와 좌표 기록이 올바르지 않은 문제를 수정했습니다.
  3. 터키어 등 언어 환경에서 PrivacyOverrideExtensions.setSessionReplayTouchPrivacy(View, TouchPrivacy)로 구성한 View 터치 개인정보 보호 재정의가 적용되지 않을 수 있는 문제를 수정했습니다.

ft-session-replay-material

  1. 변경 사항 없음.

ft-session-replay-compose

  1. 변경 사항 없음.

0.1.6 (2026/07/09)

ft-session-replay

  1. Flutter Session Replay 외부 레코더 모드를 추가했습니다. Flutter 측 레코더가 Session Replay 샘플링, 컨텍스트 업데이트, 데이터 쓰기 기능을 재사용할 수 있으며 네이티브 레코더 수명 주기는 비활성화됩니다.
  2. Session Replay가 DialogFragment 처리 시 getDialog() 또는 소속 Window가 null이어서 발생하는 크래시를 수정했습니다.

ft-session-replay-material

  1. 변경 사항 없음.

ft-session-replay-compose

  1. 변경 사항 없음.

0.1.5 (2026/05/19)

ft-session-replay

  1. Flutter Session Replay 업로드 호환 기능을 추가했습니다. Flutter RUM 컨텍스트 Key를 사용하여 Replay 배치를 해당 Segment에 매핑할 수 있습니다.
  2. 일반 저장소 및 암호화 저장소 구현에서 Session Replay 파일 읽기/쓰기 팩토리의 호환성 문제를 수정했습니다.
  3. Session Replay 데이터 및 리소스 업로드의 재시도 상태 처리를 수정했습니다. 업로드 실패 시 백오프 정책에 따라 재시도하며, 잘못된 업로드 주소는 사용 가능한 주소가 구성될 때까지 건너뜁니다.
  4. Session Replay에 남아 있는 JetBrains nullability 어노테이션을 AndroidX 어노테이션으로 교체하여 중복 어노테이션 의존성을 줄였습니다.

ft-session-replay-material

  1. 변경 사항 없음.

ft-session-replay-compose

  1. 변경 사항 없음.

0.1.4 (2026/04/30)

ft-session-replay

  1. 중복 Kotlin 의존성을 제거하고 Session Replay 의존성을 단순화했습니다.
  2. Session Replay 구성, 개인정보 제어, 사용자 정의 Mapper 확장, 리소스 업로드 콜백 등 공개 API 주석을 보완하여 Java/Kotlin 통합 시 IDE 힌트와 사용자 정의 확장 개발 경험을 개선했습니다.

ft-session-replay-material

  1. ft-session-replay 0.1.4와 버전을 맞췄으며 API 또는 동작 변경은 없습니다.

ft-session-replay-compose

  1. AndroidView 상호 운용 노드 녹화 시 낮은 버전의 Session Replay Core에 MappingContext.getInteropViewCallback()이 없어 발생하는 크래시를 수정했습니다.
  2. Compose Replay가 의존하는 MappingContext AndroidView 상호 운용 콜백 접근 메서드를 유지하도록 consumer ProGuard 규칙을 추가했습니다.
  3. Compose Replay의 Modifier 개인정보 보호 재정의, 확장 지원, 텍스트 잘림 모드, 이미지 Wireframe 헬퍼 메서드 주석을 보완하여 Kotlin/Compose 통합 시 IDE 힌트를 개선했습니다.

0.1.3 (2026/04/17)

ft-session-replay

  1. WebView Session Replay 기능을 추가했습니다. DCloud WebView 및 WebView 컨테이너 전체 스냅샷 키프레임 수집을 지원합니다.
  2. Session Replay와 RUM 컨텍스트 연결 기능을 추가했습니다. WebView 컨테이너와 로드된 HTML 콘텐츠의 컨텍스트를 연결할 수 있습니다.
  3. 오류 샘플링 기능을 추가하고 원격 구성을 통해 Session Replay를 동적으로 제어할 수 있도록 지원합니다.
  4. 이미지 리소스 업로드 기능을 추가하고 userAgent, appVersion, forceFullSnapshot 등 메타데이터 처리를 보완했습니다.
  5. 프레임 생성 및 소비, 샤딩 프레임 보정, WebView Replay 데이터 지연 쓰기, 비가시 WebView 처리, 디스크 쓰기 제한 등을 최적화하여 안정성과 성능을 개선했습니다.
  6. WebView Replay 데이터 손실, 조기 쓰기로 인한 화이트 스크린, 낮은 버전 OkHttp 동기화 실패, Bitmap 재활용으로 인한 녹화 실패, rumLinkKey null 값 처리, 다중 이미지 시나리오에서 녹화 시간 초과 등의 문제를 수정했습니다.

ft-session-replay-material

  1. CardView 및 Chip을 포함한 Material 컴포넌트에 대한 Session Replay 지원을 추가했습니다.
  2. 낮은 Android 버전의 호환성 및 디버깅 지원을 개선했습니다.
  3. Replay 데이터에서 Material 컴포넌트의 렌더링 표현을 최적화하고 MaterialDrawableToColorMapper 규칙을 업데이트했습니다.
  4. ft-session-replay와 버전 정책을 맞춰 릴리스 관리 및 통합 일관성을 개선했습니다.

ft-session-replay-compose

  1. Jetpack Compose Session Replay 지원을 추가했습니다. ComposeView 및 AndroidComposeView 시나리오를 녹화하고 재생할 수 있습니다.
  2. 텍스트, 텍스트 입력 상자, 버튼, 이미지, 슬라이더, Switch, Checkbox, RadioButton, Tab, 컨테이너 노드 등 일반적인 Compose 컴포넌트의 의미론적 매핑 및 재생을 지원합니다.
  3. Compose에서 Modifier를 통한 Session Replay 개인정보 보호 재정의를 지원합니다. 노드 숨기기, 이미지 개인정보, 텍스트 및 입력 개인정보, 터치 개인정보를 포함합니다.
  4. 현재 Compose 재생은 의미론적 노드 매핑을 기반으로 하며 픽셀 단위 복원을 보장하지 않습니다. Brush 배경은 아직 지원되지 않습니다. 예를 들어 선형 그라데이션, 방사형 그라데이션 배경은 원래 효과대로 재생되지 않습니다.

ft-session-replay 더 많은 변경 로그

ft-session-replay-material 더 많은 변경 로그

ft-session-replay-compose 더 많은 변경 로그

ft-native

1.1.3 (2026/04/30)

  1. Native Crash 백트레이스 견고성을 강화했습니다. null 주소 탐지를 추가하고 libft_native_exp_lib.so에서 libunwind.so 백트레이스 시 null 포인터 및 와일드 포인터 검사를 강화했습니다.
  2. Native Crash 처리 과정에서 libunwind.so가 이차 크래시를 일으킬 수 있는 문제를 수정했습니다.

1.1.2 (2025/07/18)

  1. Android 16K 페이지 크기에 적응했습니다(Android 15+ 호환).

1.1.1 (2024/06/22)

  1. Native Crash 및 ANR에 logcat 구성 기능을 추가했습니다.

1.1.0 (2024/03/22)

  1. ANR Crash 캡처를 지원합니다.
  2. C/C++ Native Crash 캡처를 지원합니다.
  3. 크래시 시 애플리케이션 실행 상태 수집을 지원합니다.
  4. ANR 및 Native Crash 트리거 콜백을 지원합니다.

더 많은 변경 로그

ft-plguin ( AGP >=7.4.2 )

1.3.8 (2026/08/16)

  1. OkHttp newWebSocket() 자동 계측을 추가했습니다. FTRUMConfig.setEnableTraceUserResource(true)를 활성화하면 WebSocket 핸드셰이크 RUM Resource를 자동으로 수집할 수 있으며, ft-sdk >= 1.7.5가 필요합니다.

1.3.7 (2026/06/26)

  1. ignorePackages에 와일드카드 구성 지원을 추가했습니다.
  2. autoUploadNativeDebugSymbol를 활성화하고 기본 nativeLibPath 자동 인식을 사용할 때 일부 AGP 빌드에서 strip되지 않은 Native .so 심볼 파일 디렉터리를 인식하지 못해 심볼 압축 패키지 생성이 비정상이 되는 문제를 수정했습니다.

1.3.6 (2025/12/03)

  1. UniApp WebView를 지원합니다.
  2. ASM 작성을 지원하는 knownWebViewClasses 매개변수를 추가했습니다.
  3. 파일로 로그를 출력하는 기능을 추가했습니다.
  4. 더 많은 로그를 출력하는 verboseLog 매개변수를 추가했습니다.
  5. FTMethodAdapter에 숫자 경계 처리를 추가했습니다.
  6. 사용자 정의 WebView 내부 메서드를 필터링하기 위한 무시 구성을 추가했습니다.

1.3.5 (2025/04/18)

  1. 동시 컴파일에서 plugin 매개변수의 안정성을 최적화했습니다.
  2. ASM이 FTAutoTrack.trackRequestBuilder 메서드를 작성하도록 추가했습니다. ft-sdk 1.6.10 이상 버전이 필요합니다.
  3. Log.println 로그 자동 수집을 지원합니다. ft-sdk 1.6.8 이상 버전이 필요합니다.

1.3.4 (2024/12/11)

  1. 오류 로그 출력을 최적화했습니다.
  2. minifyEnabled를 활성화하지 않아 sourcemap symbol 파일이 생성되지 않는 문제를 수정했습니다.
  3. generateSourceMapOnly true를 통해 sourcemap을 생성하되 자동으로 업로드하지 않는 기능을 지원합니다.

1.3.3 (2024/09/04)

  1. native symbol so 자동 획득 및 업로드를 최적화하고 사용자 정의 nativeLibPath 지정을 지원합니다.

1.3.2 (2024/08/13)

  1. React Native WebView 이벤트 자동 캡처를 지원합니다.

1.3.1 (2024/07/04)

  1. asmVersion 구성 기능을 추가했습니다. asm7 ~ asm9를 지원하며 기본값은 asm9입니다.
  2. WebView 사용자 정의 메서드가 ASM 작성 후 순환 호출을 일으켜 WebView 콘텐츠를 로드하지 못하는 문제를 수정했습니다. (관련 메서드: loadUrl, loadData, loadDataWithBaseURL, postUrl)
  3. IgnoreAOP가 클래스 내에서 선언되어 해당 클래스의 모든 메서드를 무시하도록 지원합니다.
  4. 패키지 경로 구성을 통해 ASM을 무시하는 ignorePackages 구성을 추가했습니다.

1.3.0 (2024/03/22)

  1. datakit source map 자동 업로드 및 native symbol 업로드를 지원합니다.
  2. Application 콜드/웜 스타트, Activity 페이지 이동, View, ListView, Dialog, Tab 클릭 이벤트 캡처를 지원합니다.
  3. WebView JS 리스너 메서드 작성을 지원합니다.
  4. OkHttp Trace 및 Resource 데이터 자동 작성을 지원합니다.
  5. Gradle 8.0, AGP 8.0을 지원합니다.
  6. IgnoreAOP 무시 마커를 지원합니다.
  7. Alibaba Cloud 핫픽스 프레임워크와의 호환을 지원합니다.

더 많은 변경 로그

ft-plugin-legacy ( AGP <=7.4.2 )

1.1.9 (2025/12/09)

  1. UniApp WebView를 지원합니다.
  2. ASM 작성을 지원하는 knownWebViewClasses 매개변수를 추가했습니다.
  3. 파일로 로그를 출력하는 기능을 추가했습니다.
  4. 더 많은 로그를 출력하는 verboseLog 매개변수를 추가했습니다.
  5. FTMethodAdapter에 숫자 경계 처리를 추가했습니다.
  6. 사용자 정의 WebView 내부 메서드를 필터링하기 위한 무시 구성을 추가했습니다.

1.1.8 (2024/08/13)

  1. React Native WebView 이벤트 자동 캡처를 지원합니다.

1.1.7 (2024/07/04)

  1. WebView 서브클래스의 재정의 메서드가 ASM 작성 후 순환 호출을 일으켜 WebView 콘텐츠를 로드하지 못하는 문제를 수정했습니다. (관련 메서드: loadUrl, loadData, loadDataWithBaseURL, postUrl)
  2. IgnoreAOP가 클래스 내에서 선언되어 해당 클래스의 모든 메서드를 무시하도록 지원합니다.
  3. 패키지 경로 구성을 통해 ASM을 무시하는 ignorePackages 구성을 추가했습니다.

1.1.6 (2024/03/22)

  1. datakit source map 자동 업로드 및 native symbol 업로드를 지원합니다.
  2. Application 콜드/웜 스타트, Activity 페이지 이동, View, ListView, Dialog, Tab 클릭 이벤트 캡처를 지원합니다.
  3. WebView JS 리스너 메서드 작성을 지원합니다.
  4. OkHttp Trace 및 Resource 데이터 자동 작성을 지원합니다.
  5. AGP 7.4.2 이하 버전을 지원합니다.
  6. IgnoreAOP 무시 마커를 지원합니다.
  7. Alibaba Cloud 핫픽스 프레임워크와의 호환을 지원합니다.

더 많은 변경 로그

문서 평가

이 페이지가 도움이 되었나요?