문제 해결¶
SDK 초기화 예외 확인¶
Logcat을 확인하여 로그 Level이 Error이고 Tag가 [FT-SDK] 접두사인 로그가 있는지 확인하세요.
Debug 환경에서 Guance SDK를 구성하고 앱을 처음 실행한 후 Xcode의 디버거 콘솔을 확인하세요. SDK는 어서션을 사용하여 여러 구성의 정확성을 확인하고, 구성 오류 시 크래시가 발생하며 관련 경고를 출력합니다.
예: SDK를 구성할 때 datakit metrics 쓰기 주소를 설정하지 않으면 프로그램이 크래시되고 콘솔에 경고⚠️가 출력됩니다.
Debug 디버그 활성화¶
다음 구성을 통해 SDK의 debug 기능을 활성화할 수 있습니다.
let config: FTMobileConfig = {
serverUrl: Config.SERVER_URL,
debug: true
};
FTMobileReactNative.sdkConfig(config);
릴리스 버전을 배포할 때는 이 구성을 비활성화하는 것이 좋습니다
Logcat Tag가 [FT-SDK] 접두사인 로그를 확인하세요.
SDK의 디버그 로그는 [FTLog] 접두사로 식별됩니다.
-
xcode를 사용하여 실행하는 경우, xcode 디버거 콘솔에서 직접 SDK 디버그 로그를 확인할 수 있습니다.
-
터미널 명령어
yarn ios또는yarn react-native run-ios를 사용하여 실행하는 경우, Mac의 '콘솔'에서 SDK 디버그 로그를 확인할 수 있습니다.
'콘솔' 사용 방법:
동작을 선택하고 간략 정보 포함, 디버그 정보 포함을 체크하세요.
디버그할 장치를 선택하고 시작 버튼을 클릭한 후, 오른쪽 검색 조건 입력란에 검색 조건 [FTLog] 를 입력하세요. 그러면 SDK의 디버그 로그를 확인할 수 있습니다.
Android Logcat 및 iOS Xcode Console 로그 예시
SDK가 정상적으로 실행되지만 데이터가 없음¶
-
Datakit가 정상적으로 실행 중인지 확인하세요.
-
SDK 업로드 주소
datakitUrl또는datawayUrl이 올바르게 구성되었고, 올바르게 초기화되었는지 확인하세요. debug 모드에서 Android Logcat 또는 iOS Xcode Console의 동기화 로그를 확인하세요. -
datakit가 해당 워크스페이스로 데이터를 업로드하고 있는지, 오프라인 상태인지 확인하세요. 이는 Guance에 로그인하여 '인프라스트럭처'를 확인함으로써 확인할 수 있습니다.
데이터 손실¶
일부 데이터 손실¶
-
RUM의 특정 Session 데이터 또는 Log, Trace의 몇 가지 데이터가 손실된 경우, 먼저 FTRUMConfig, FTLoggerConfig, FTTraceConfig에서
sampleRate < 1이 설정되었는지 확인해야 합니다. -
수집된 RUM 데이터가 불완전하고, Resource 또는 Action 데이터가 없습니까?
Resource 및 Action 데이터는 View와 연결되어 있습니다.
FTReactNativeRUM.startView작업이 있는지 확인해야 합니다. 자세한 내용은 RUM View 문서를 참조하여 View 이벤트 수집을 구현하세요. -
데이터를 업로드하는 장치의 네트워크와 datakit를 설치한 장치의 네트워크 및 부하 문제를 확인하세요.
호환 문제¶
react-native-navigation 실행 호환 문제¶
ReactTextShadowNode.UNSET 심볼을 찾을 수 없음¶
이는 react-native-navigation 버전 호환 문제로 인한 것입니다. 관련 issue는 여기에서 확인할 수 있습니다. ReactTypefaceUtils.java를 변경하거나 다운로드하여 교체하면 이 문제를 해결할 수 있습니다.
모듈 react/jsx-runtime을 찾을 수 없음¶
영향 범위: SDK 버전 0.3.0 && React 버전 < 16.14.0
원인: SDK 내부에서 사용하는 react/jsx-runtime은 React >= 16.14.0에서만 지원됩니다.
수정 제안:
- SDK 버전을 >= 0.3.1로 업그레이드하세요.
참고: 로컬 경로 방식으로 @cloudcare/react-native-mobile 의존성 라이브러리를 추가하는 것은 권장되지 않으며, 오류가 발생할 경우 수정이 불가능할 수 있습니다.
네이티브와 React Native 혼합 개발¶
오류: Cannot read properties of undefined (reading 'addError')¶
원인: RN SDK 버전과 Native SDK 버전이 호환되지 않거나 설치가 완전하지 않아 발생합니다.
문제 확인 방법:
Android 프로젝트 루트 디렉터리에서 터미널 명령어 ./gradlew app:dependencies를 실행하고, 출력 결과에 cloudcare_react-native-mobile이 포함되어 있는지 확인하세요.
cloudcare_react-native-mobile은 RN 프로젝트에 Guance RN SDK 의존성을 추가한 후 Android에 설치되는 의존성 라이브러리입니다.
Podfile.lock 파일을 확인하여 FTMobileReactNativeSDK 의존성 항목이 있는지 확인하세요.
FTMobileReactNativeSDK는 RN 프로젝트에 Guance RN SDK를 통합한 후 iOS에 설치되는 의존성 라이브러리입니다.
수정 제안:
-
버전 호환성 확인
- RN SDK와 네이티브 SDK 버전이 일치하는지 확인하세요.
- RN SDK에 해당하는 네이티브 SDK 버전 정보 확인 경로:
node_modules/@cloudcare/react-native-mobile/android/build.gradlenode_modules/@cloudcare/react-native-mobile/FTMobileReactNativeSDK.podspec -
의존성 재설치
- 프로젝트 캐시 정리:
- 의존성 재설치:
위 단계를 통해 버전 비호환 또는 불완전한 설치로 인해 발생하는 이 오류를 효과적으로 해결할 수 있습니다.

