出海帳號、上架與投放問題,Telegram 直接問@gooacc
應用發布約 3 分鐘讀完

蘋果隱私清單和所需原因 API 怎麼報

隱私標籤是你在網站上填的表,隱私清單是打進安裝包裡的文件。兩份都要和 App 真實調用的 API 一致。

01清單裡報什麼

  • 應用自己用到的所需原因 API,例如 UserDefaults、文件時間戳、磁碟空間、系統啟動時間。每一類選一個真實的原因。
  • 是否用於追蹤。用於追蹤時,列出參與追蹤的域名。
  • 你收集的數據類型。要和 App Store Connect 裡的隱私標籤一致。
  • 合併進來的 SDK。每個 SDK 應自帶隱私清單,Xcode 會在歸檔時匯總。
原因代碼以蘋果當前文檔為準。不要選一個看起來能用、但和你的功能對不上的理由。

02和隱私標籤一起對

位置誰來填對不上的結果
PrivacyInfo.xcprivacy工程裡,隨包上傳上傳或審核時提示缺少清單或原因
App Store 隱私標籤Connect 網頁標籤和二進位不一致時被詢問
隱私政策網址你的網站用戶和審核員看到的收集範圍和前兩份不同

三份一起改。只改標籤、不改清單,下一次歸檔還會報。

03第三方 SDK 怎麼處理

  1. 把還在工程裡的 SDK 列出來,包括廣告、統計、崩潰、登錄。
  2. 升到作者已經附帶隱私清單的版本。不要為了省事鎖在一個不再更新的舊版。
  3. 歸檔後看生成的隱私報告,確認沒有「缺少清單」的項。
  4. 某個 SDK 你已經不用了,就從工程移除,而不是留著但在標籤裡寫不收集。

04所需原因 API 不要亂選

UserDefaults 用來存設置,就選存設置這一類原因。不要因為示例代碼裡有一個原因,就抄到磁碟空間或啟動時間上。

沒有調用的 API 不要聲明。聲明了卻找不到調用,審核一樣會問。

05上傳前看一遍報告

  1. 用當前要提交的配置歸檔,不要用調試包看報告。
  2. 打開隱私報告,所需原因 API、追蹤域名、收集類型各看一遍。
  3. 和 Connect 裡已經發布的隱私標籤對比,有新增收集就先改標籤再提交。
  4. TestFlight 外部測試同樣會看這些聲明,不要等正式審核才補。

問常見問題

舊應用不更新,也要補隱私清單嗎?

不提交新版本就不會因這次上傳被檢查。一旦發新版本,就按當前要求帶上清單。

只有自己寫的代碼,沒有 SDK,還要清單嗎?

要。應用目標本身也需要隱私清單,哪怕收集類型是空、追蹤為否。用了所需原因 API 就必須寫原因。

清單和國內隱私政策是同一個文件嗎?

不是。清單是蘋果要求放進包裡的聲明。給用戶看的仍是隱私政策網頁。

所屬專題:iOS 開發者 App 上架

需要落地協助?

帳號、上架、投放的具體情況各不相同,把你的情況發給我們,一起看怎麼做最穩。

@gooacc