iOS Privacy Manifest & Required Reasons APIs: A Compliance Checklist
Apple began enforcing a requirement on May 1, 2024, that all iOS apps must include a PrivacyInfo.xcprivacy file declaring the use of specific system APIs with valid reason codes. Apps and their third-party SDKs must comply, or face rejection with error code ITMS-91053, even if the APIs are commonly used. Developers must audit both their own code and dependencies to ensure all required APIs are properly declared.
- ▪Apple now requires a PrivacyInfo.xcprivacy file for all iOS app submissions to declare use of specific system APIs.
- ▪Five categories of APIs require declared reasons, including UserDefaults, file timestamp, system boot time, disk space, and active keyboard APIs.
- ▪Third-party SDKs without proper privacy manifests can cause app rejections, even if the app's own manifest is complete.
- ▪Developers can use Xcode's Privacy Report to identify missing or incorrect SDK manifests before submission.
- ▪Static CocoaPods may fail to bundle privacy manifests correctly, requiring manual inclusion in the app's own manifest.
Opening excerpt (first ~120 words) tap to expand
try { if(localStorage) { let currentUser = localStorage.getItem('current_user'); if (currentUser) { currentUser = JSON.parse(currentUser); if (currentUser.id === 1151116) { document.getElementById('article-show-container').classList.add('current-user-is-article-author'); } } } } catch (e) { console.error(e); } Mrugesh Tank Posted on May 2 • Originally published at idiotswithios.com iOS Privacy Manifest & Required Reasons APIs: A Compliance Checklist #ios #swift #mobile #appstore There's a specific kind of frustration that comes from an App Store rejection you didn't see coming. Not a crash. Not a guideline violation. Not a metadata problem. Just a cold rejection email with an error code — ITMS-91053 — and a list of APIs your app called without declaring a reason for calling them.
…
Excerpt limited to ~120 words for fair-use compliance. The full article is at DEV.to (Top).