蘋果隱私清單和所需原因 API 怎麼報
隱私標籤是你在網站上填的表,隱私清單是打進安裝包裡的文件。兩份都要和 App 真實調用的 API 一致。
01清單裡報什麼
- 應用自己用到的所需原因 API,例如 UserDefaults、文件時間戳、磁碟空間、系統啟動時間。每一類選一個真實的原因。
- 是否用於追蹤。用於追蹤時,列出參與追蹤的域名。
- 你收集的數據類型。要和 App Store Connect 裡的隱私標籤一致。
- 合併進來的 SDK。每個 SDK 應自帶隱私清單,Xcode 會在歸檔時匯總。
原因代碼以蘋果當前文檔為準。不要選一個看起來能用、但和你的功能對不上的理由。
02和隱私標籤一起對
| 位置 | 誰來填 | 對不上的結果 |
|---|---|---|
| PrivacyInfo.xcprivacy | 工程裡,隨包上傳 | 上傳或審核時提示缺少清單或原因 |
| App Store 隱私標籤 | Connect 網頁 | 標籤和二進位不一致時被詢問 |
| 隱私政策網址 | 你的網站 | 用戶和審核員看到的收集範圍和前兩份不同 |
三份一起改。只改標籤、不改清單,下一次歸檔還會報。
03第三方 SDK 怎麼處理
- 把還在工程裡的 SDK 列出來,包括廣告、統計、崩潰、登錄。
- 升到作者已經附帶隱私清單的版本。不要為了省事鎖在一個不再更新的舊版。
- 歸檔後看生成的隱私報告,確認沒有「缺少清單」的項。
- 某個 SDK 你已經不用了,就從工程移除,而不是留著但在標籤裡寫不收集。
04所需原因 API 不要亂選
UserDefaults 用來存設置,就選存設置這一類原因。不要因為示例代碼裡有一個原因,就抄到磁碟空間或啟動時間上。
沒有調用的 API 不要聲明。聲明了卻找不到調用,審核一樣會問。
05上傳前看一遍報告
- 用當前要提交的配置歸檔,不要用調試包看報告。
- 打開隱私報告,所需原因 API、追蹤域名、收集類型各看一遍。
- 和 Connect 裡已經發布的隱私標籤對比,有新增收集就先改標籤再提交。
- TestFlight 外部測試同樣會看這些聲明,不要等正式審核才補。
問常見問題
舊應用不更新,也要補隱私清單嗎?
不提交新版本就不會因這次上傳被檢查。一旦發新版本,就按當前要求帶上清單。
只有自己寫的代碼,沒有 SDK,還要清單嗎?
要。應用目標本身也需要隱私清單,哪怕收集類型是空、追蹤為否。用了所需原因 API 就必須寫原因。
清單和國內隱私政策是同一個文件嗎?
不是。清單是蘋果要求放進包裡的聲明。給用戶看的仍是隱私政策網頁。