본문으로 건너뛰기

개인정보 보호 매니페스트

최근 업데이트 2026. 08. 27.

배경​

WWDC23에서 Apple은 새로운 개인정보 보호 매니페스트 정책을 발표했습니다. 2024년 봄부터 새로 제출하는 App 또는 App 업데이트에 App Store의 App에서 흔히 사용되는 서드파티 SDK를 추가한 경우, 해당 SDK의 개인정보 보호 매니페스트를 포함해야 합니다.

수집 SDK 대응 방안​

iOS 수집 SDK는 v3.0.2-beta.2 버전부터 개인정보 보호 매니페스트를 제공합니다.

iOS 통합​

1. Cocoapods 통합​

SDK를 그대로 추가하면 개인정보 보호 매니페스트 내용이 자동으로 포함되므로 별도로 처리할 필요가 없습니다.

pod 'ThinkingSDK', '>= 3.0.2'

2. Framework 통합​

iOS 수집 SDK의 .xcframework 라이브러리에는 개인정보 보호 매니페스트 파일이 이미 추가되어 있지만 서명은 되어 있지 않습니다. 서명이 필요하면 적절한 인증서로 직접 서명하십시오.

  1. iOS SDK를 다운로드하고 압축을 풉니다
  2. ThinkingSDK.xcframework, ThinkingDataCore.xcframework를 XCode Project Workspace 프로젝트로 드래그합니다
  3. Targets를 찾아 Build Settings 메뉴의 Other linker flags 옵션에 -ObjC를 추가합니다

게임 엔진 통합​

개인정보 보호 매니페스트 파일을 수동으로 처리하기​

  1. 게임 엔진 에디터가 XCode 프로젝트를 자동으로 컴파일하여 생성합니다

  2. 이 XCode 프로젝트에 자체 프로젝트용 개인정보 보호 매니페스트 파일을 생성합니다. Apple 개인정보 보호 매니페스트 사양을 참고하십시오

  3. ThinkingData 수집 SDK의 개인정보 보호 매니페스트 파일을 다운로드합니다(부록 참고)

  4. ThinkingData 수집 SDK의 개인정보 보호 매니페스트 파일과 프로젝트의 개인정보 보호 매니페스트를 수동으로 통합합니다

    1. 부록의 NSPrivacyCollectedDataTypes 아래 모든 item을 각각 App 프로젝트의 PrivacyInfo.xcprivacy 파일에서 해당 key 아래로 복사합니다
    2. NSPrivacyAccessedAPITypes 아래 모든 item을 각각 App 프로젝트의 PrivacyInfo.xcprivacy 파일에서 해당 key 아래로 복사합니다

크로스 플랫폼 프레임워크 통합​

개인정보 보호 매니페스트 파일을 수동으로 처리하기​

  1. 크로스 플랫폼 프레임워크(예: Flutter, RN)의 에디터가 XCode 프로젝트를 자동으로 컴파일하여 생성합니다

  2. 이 XCode 프로젝트에 자체 프로젝트용 개인정보 보호 매니페스트 파일을 생성합니다. Apple 개인정보 보호 매니페스트 사양을 참고하십시오

  3. ThinkingData 수집 SDK의 개인정보 보호 매니페스트 파일을 다운로드합니다(부록 참고)

  4. ThinkingData 수집 SDK의 개인정보 보호 매니페스트 파일과 프로젝트의 개인정보 보호 매니페스트를 수동으로 통합합니다

    1. 부록의 NSPrivacyCollectedDataTypes 아래 모든 item을 각각 App 프로젝트의 PrivacyInfo.xcprivacy 파일에서 해당 key 아래로 복사합니다
    2. NSPrivacyAccessedAPITypes 아래 모든 item을 각각 App 프로젝트의 PrivacyInfo.xcprivacy 파일에서 해당 key 아래로 복사합니다

부록​

ThinkingData 수집 SDK 개인정보 보호 매니페스트이며, 파일명은 PrivacyInfo.xcprivacy입니다

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>NSPrivacyTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypes</key>
<array>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeProductInteraction</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeCrashData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypePerformanceData</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeCoarseLocation</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeUserID</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
<dict>
<key>NSPrivacyCollectedDataType</key>
<string>NSPrivacyCollectedDataTypeDeviceID</string>
<key>NSPrivacyCollectedDataTypeLinked</key>
<false/>
<key>NSPrivacyCollectedDataTypeTracking</key>
<false/>
<key>NSPrivacyCollectedDataTypePurposes</key>
<array>
<string>NSPrivacyCollectedDataTypePurposeAnalytics</string>
</array>
</dict>
</array>
<key>NSPrivacyTrackingDomains</key>
<array/>
<key>NSPrivacyAccessedAPITypes</key>
<array>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryUserDefaults</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>1C8F.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryDiskSpace</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>E174.1</string>
<string>7D9E.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategorySystemBootTime</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>35F9.1</string>
</array>
</dict>
<dict>
<key>NSPrivacyAccessedAPIType</key>
<string>NSPrivacyAccessedAPICategoryFileTimestamp</string>
<key>NSPrivacyAccessedAPITypeReasons</key>
<array>
<string>C617.1</string>
</array>
</dict>
</array>
</dict>
</plist>
이 문서가 도움이 되었나요?