iOS 응용 (swift)
[iOS - swift] 2. Privacy manifest 적용 방법 (PrivacyInfo.xcprivacy)
jake-kim
2024. 3. 27. 01:51
1. Privacy manifest 개념, 사용해야하는 이유 (PrivacyInfo.xcprivacy)
2. Privacy manifest 적용 방법 (PrivacyInfo.xcprivacy)
3. Privacy manifest의 privacy report 사용 방법
Prvacy Manifest 작성
- Xcode > 파일 생성 > privacy 검색 > App Privacy 선택
- 생성된 형태
- 손바닥 모양의 아이콘으로 되어 있고, plist처럼 표출
(최초 만들면 App Privacy Configuraton 키값만 있고 value값은 없으므로, 편의를 위해 유명한 라이브러리인 Alamofire에 어떻게 작성되어 있는지 확인)
- Alamofire깃을 clone하고 프로젝트를 열어 PrivacyInfo 파일을 확인
- Privacy Tracking Enabled: 앱이 추적하지 않음 (ATT를 사용하지 않음)
- 다 열어보면 아래쪽에 Privacy Accesed API Types 안의 value값을 보면, System Boot Time을 사용하고 on-device의 시간을 측정한다는 값이 존재
- Xcode에서 Privacy Accessed API Types에서 +버튼을 눌러 아이템을 하나 만들면 자동으로 템플릿으로 입력해야하는 정보가 key값으로 만들어지므로 편하게 작성이 가능
- 다른 예제)
- 사용자의 이름을 수집하는 곳도 있고 이 이름을 Linekd to User하는 것이 기입
- Collection Purposes를 이를 사용하는 목적도 기입
어떤것을 기록해야하는지?
- PrivacyInfo파일에서 key로 주어지는 것
- NSPrivacyCollectedDataType: Stirng 타입
- NSPrivacyCollectedDataTypeLinked: Bool 타입
- NSPrivacyCollectedDataTypeTracking: Bool 타입
- NSPrivacyCollectedDataTypePurposes: Array 타입
- 앱 유형에 따라 아래와 같은 것들을 기록
헬스 관련)
위치 관련)
(이밖의 유형들은 애플 가이드 참고)
* 이렇게 plist로 적용해놓으면 보기 쉽게 한번에 볼 수 있는 리포트가 있는데, 이 방법은 다음 포스팅 글에서 계속
* 참고
- https://github.com/Alamofire/Alamofire
- https://developer.apple.com/videos/play/wwdc2023/10060/
- https://developer.apple.com/documentation/bundleresources/privacy_manifest_files#overview