본문으로 건너뛰기

규정 준수 가이드

최근 업데이트 2026. 10. 03.

1. 최신 SDK 버전 안내​

새로운 규제 요건을 충족하는 최신 SDK 버전: 1.7.6

2. 권한 사용 규정 준수 요구 사항​

권한 이름권한 설명사용 목적권한 요청 시점
ohos.permission.INTERNETInternet 네트워크 사용 허용데이터 전송 기능을 사용할 때 네트워크 데이터에 액세스하는 데 사용SDK 초기화 시 또는 데이터 전송 인터페이스 호출 시
ohos.permission.GET_NETWORK_INFO앱의 네트워크 정보 가져오기 허용데이터 전송 기능을 사용할 때 SDK가 네트워크 상태에 따라 데이터 전송 여부를 결정SDK 초기화 시
ohos.permission.STORE_PERSISTENT_DATA앱의 영구 데이터 저장 허용앱을 삭제한 후에도 유지되어야 하는 데이터 저장SDK 초기화 시

3. 지연 초기화 요구 사항​

앱이 유저의 동의를 받기 전에 SDK가 유저의 개인 정보를 미리 처리하지 않도록, SDK는 유저가 '개인정보 처리방침'에 동의한 후 초기화해야 합니다.

예시 코드는 다음과 같습니다:

// 개인정보 처리방침 동의 여부에 따라 데이터 수집 활성화 여부 결정
if (isPrivacyPolicyAccepted) { // 유저가 '개인정보 처리방침'에 동의함
TDAnalytics.init(context, "appId", "serverUrl")
}

SDK는 초기화할 때 OS 버전, 디바이스 제조사, 운영 체제, 화면 해상도, 디바이스 모델, APP 버전, 네트워크 상태, 네트워크 통신사, 앱 설치 시간, 시스템 언어 등의 정보를 수집하며, 이는 통계 분석 기능에 사용됩니다.

4. SDK 선택적 개인 정보 설정 안내​

개발자는 아래 SDK 선택적 개인 정보 설정 예시를 참고하여 설정할 수 있습니다. SDK를 초기화할 때 disablePresetProperties 파라미터를 설정하여 비활성화할 디바이스 정보 배열을 지정할 수 있습니다. disablePresetProperties의 기본값은 빈 배열이며, 이는 기본적으로 모든 시스템 속성을 수집한다는 뜻입니다. 특정 시스템 속성을 비활성화해야 하는 경우 비활성화할 시스템 속성을 disablePresetProperties 배열에 추가하면 됩니다.

다음은 SDK의 모든 이벤트에서 기본적으로 수집하는 시스템 속성입니다:

속성 이름한국어 이름속성 타입수집 시점설명

#ip

IP 주소

텍스트

서버 측 수집

유저의 IP 주소로, AE는 이를 기반으로 유저의 지리적 위치 정보를 가져옵니다
#country국가텍스트서버 측 수집유저가 있는 국가로, IP 주소를 기반으로 생성됩니다

#country_code

국가 코드텍스트

서버 측 수집

유저가 있는 국가의 국가 코드(ISO 3166-1 alpha-2, 즉 영문 대문자 2자리)로, IP 주소를 기반으로 생성됩니다
#province성(Province)텍스트서버 측 수집유저가 있는 성/주로, IP 주소를 기반으로 생성됩니다
#city도시텍스트서버 측 수집유저가 있는 도시로, IP 주소를 기반으로 생성됩니다
#os_versionOS 버전텍스트초기화 시 1회 수집iOS 11.2.2, Android 8.0.0 등

#manufacturer

디바이스 제조사

텍스트

초기화 시 1회 수집

유저 디바이스의 제조사(예: Apple, vivo 등)

#os운영 체제텍스트초기화 시 1회 수집예: Android, iOS, HarmonyOS 등
#device_id디바이스 ID텍스트초기화 시 1회 수집유저의 디바이스 ID. iOS는 유저의 IDFV 또는 UUID, Android는 androidID를 사용
#screen_height화면 높이숫자초기화 시 1회 수집유저 디바이스의 화면 높이(예: 1920 등)
#screen_width화면 너비숫자초기화 시 1회 수집유저 디바이스의 화면 너비(예: 1080 등)
#device_model디바이스 모델텍스트초기화 시 1회 수집유저 디바이스의 모델(예: iPhone 8 등)
#device_type디바이스 타입텍스트초기화 시 1회 수집디바이스 타입(예: "Tablet", "Phone")
#app_versionAPP 버전텍스트초기화 시 1회 수집APP의 버전
#bundle_id앱 고유 식별자텍스트초기화 시 1회 수집앱 패키지명 또는 프로세스명

#lib

SDK 타입텍스트

초기화 시 1회 수집

연동한 SDK의 타입(예: Android, iOS 등)
#lib_versionSDK 버전텍스트초기화 시 1회 수집연동한 SDK의 버전
#network_type네트워크 상태텍스트초기화 시 1회 수집, 네트워크 상태 변경 시 수집이벤트를 업로드할 때의 네트워크 상태(예: WIFI, 3G, 4G 등)

#carrier

네트워크 통신사텍스트

초기화 시 1회 수집

유저 디바이스의 네트워크 통신사(예: China Mobile, China Telecom 등)

#zone_offset

시간대 오프셋

숫자

이벤트 발생 시 수집

데이터 시간과 UTC 시간의 차이(시간 단위)
#install_time앱 설치 시간시간초기화 시 1회 수집유저가 앱을 설치한 시간으로, 값은 시스템에서 가져옵니다

#system_language

시스템 언어텍스트초기화 시 1회 수집유저 디바이스의 시스템 언어(ISO 639-1, 즉 영문 소문자 2자리), 예: zh, en 등

예를 들어 #os(운영 체제), #os_version(OS 버전)을 비활성화해야 하는 경우 설정 예시 코드는 다음과 같습니다:

let config = new TDConfig()
config.appId = 'appId'
config.serverUrl = 'url'
config.disablePresetProperties =["#os", "#os_version"]
TDAnalytics.initWithConfig(context, config)

모든 시스템 속성을 비활성화해야 하는 경우 모든 속성을 disablePresetProperties 배열에 설정하면 됩니다. 예시 코드는 다음과 같습니다:

let config = new TDConfig()
config.appId = 'appId'
config.serverUrl = 'url'
config.disablePresetProperties =["#lib", "#lib_version", "#os", "#os_version", "#bundle_id", "#install_time", "#manufacturer", "#device_model",
"#device_type", "#screen_width", "#screen_height","#system_language","#carrier","#app_version","#device_id","#network_type","#ip"]
TDAnalytics.initWithConfig(context, config)

5. 개인정보 처리방침 공개 요구 사항 및 예시​

ThinkingData SDK 서비스를 연동하고 사용하기 전에, 개인정보 처리방침에서 유저에게 당사 SDK의 이름, SDK 제공자 이름, 수집하는 개인 정보 유형, 사용 목적, 개인정보 처리방침 링크를 고지하고 유저의 동의를 받거나 기타 적법한 근거를 확보해야 합니다. 다음 방식을 참고하여 조항 내용을 제공할 수 있습니다:

서드파티 SDK 이름: ThinkingData SDK

서드파티 회사 이름: 数数信息科技(上海)有限公司

수집하는 개인 정보 유형: '개인정보 처리방침'의 개인정보 수집 및 획득 항목에 실제 상황에 따라 다음 내용을 기재합니다. 귀하가 활성화하여 사용할 때, 당사는 ThinkingData SDK를 통해 귀하의 디바이스 정보(IP 주소로 확인한 위치 정보, 국가, 국가 코드, 시/도, 도시, OS 버전, 디바이스 제조사, 운영 체제, 화면 해상도, 디바이스 모델, APP 버전, 네트워크 상태, 네트워크 통신사, 앱 설치 시간, 시스템 언어)를 수집합니다.

개인 정보 수집 시점: SDK 초기화 시 수집합니다.

사용 목적: 유저의 App 내 사용 효과를 통계 분석하는 데 사용합니다.

개인정보 처리방침 링크: ThinkingData SDK 개인정보 처리방침

App을 처음 실행할 때 개인정보 팝업을 표시해야 합니다. 개인정보 팝업에는 개인정보 처리방침 요약본을 게시하고 전문 링크를 첨부해야 하며, 최종 유저에게 개인정보 처리방침을 읽고 동의 여부를 선택하도록 명확하게 안내해야 합니다. 개인정보 팝업에는 동의 버튼과 동의 거부 버튼을 제공하고, 최종 유저가 직접 선택하도록 해야 합니다.

팝업 형식으로 유저의 동의를 받는 것을 권장합니다. 팝업 내용에는 ThinkingData SDK가 요청하는 권한과 수집하는 유저 관련 정보를 포함해야 합니다.

개인정보 처리방침 동의 팝업 예시:

민감 개인 정보 동의 팝업 예시:

이 문서가 도움이 되었나요?