Skip to main content

iOS 17 Privacy Manifest

A privacy manifest is a form of a property list, it records and describes the types of data that are collected by an app or SDK. In light of the new privacy requirements announced by Apple at WWDC23, which states requirements for listed SDKs to provide a privacy manifest and an SDK signature, Player Network SDK has included privacy manifests for affected plugins since Player Network SDK V1.22.

From Spring 2024, developers will have to clearly describe data use in the privacy manifest, showing how required reason APIs will be utilized in apps that are updated or uploaded to Apple App Store Connect.

The following table shows a list of Player Network SDK plugins that are affected by the new privacy requirements, follow the merge method described to configure the plugins required for your game project:

PluginPrivacy ManifestsSignatures for SDKsMerge Method
INTLCoreSupportedNot requiredManual
INTLFoundationSupportedNot requiredManual
INTLAdjustSupportedNot requiredAutomatic
INTLAppsFlyerSupportedNot requiredAutomatic
INTLDiscordSDK no longer maintained-Manual
INTLDmmSupportedSupportedAutomatic
INTLFacebookSupportedSupportedAutomatic
INTLFirebaseSupportedSupportedAutomatic
INTLGarenaSupportedNot requiredAutomatic
INTLGoogleSupportedNot requiredAutomatic
INTLHighLevelFor Need for Speed only--
INTLKaKaoNot supported yetNot required-
INTLLineSupportedSupportedAutomatic
INTLQQSupportedSupportedAutomatic
INTLTikTokSupportedNot requiredAutomatic
INTLTwitterSDK no longer maintained-Manual
INTLUbiSoftFor TDM only--
INTLVKNot supported yetNot required-
INTLVNGNot supported yetNot required-
INTLWeChatSupportedNot requiredAutomatic
INTLYouTubeSupportedRequired, not supported yetAutomatic
INTLBuglyDeprecated--
INTLCrashSightDeprecated--
INTLCustomerDeprecated--
INTLTABDeprecated--
  • Manual: Provided privacy manifests for third-party SDKs without upgrading the framework. Manual integration required, follow the Procedures to merge to the privacy manifest of the game project.
  • Automatic: Upgraded third-party SDKs with privacy manifest. No extra configuration is needed.
  • Not published yet: The third-party SDK is not yet supported, and they have not disclosed their support method.

Procedures

  1. Find the privacy manifest PrivacyInfo.xcprivacy for the required plugin from the Player Network SDK product catalog.

    PluginPath
    INTLFoundation/Plugins/iOS/INTLSDK/INTLFoundation/INTLFoundation.framework/PrivacyInfo.xcprivacy
    INTLCore/Plugins/iOS/INTLSDK/INTLCore/INTLCore.framework/PrivacyInfo.xcprivacy
    INTLGarena/Plugins/iOS/INTLSDK/INTLGarena/INTLGarena.framework/PrivacyInfo.xcprivacy
  2. Compare the 4 nodes of the PrivacyInfo.xcprivacy from Player Network SDK with the contents in the PrivacyInfo.xcprivacy from the game project, then merge based on the below conditions.

    1. Privacy Nutrition Label Types (NSPrivacyCollectedDataTypes) describes the data types used:
      Compare the Collected Data Type (NSPrivacyCollectedDataType) of each item, add the value to the game project file if they are different.
      If they are the same, instead compare Collection Purposes (NSPrivacyCollectedDataTypePurposes), add the value to the game project file if they are different.

    2. Privacy Tracking Domains (NSPrivacyTrackingDomains) lists the domains that engage in tracking:
      Compare the corresponding nodes, add the value to the game project file if they are different.

    3. Privacy Tracking Enabled (NSPrivacyTracking) describes if the App Tracking Transparency feature is enabled:
      Compare the corresponding nodes, modify the game project file if the value is YES in the Player Network SDK privacy manifest.

    4. Privacy Accessed API Types (NSPrivacyAccessedAPITypes) describes the API types used:
      Compare the Privacy Accessed API Type (NSPrivacyAccessedAPIType) of each item, add the value to the game project file if they are different.
      If they are the same, instead compare Privacy Accessed API Reasons (NSPrivacyAccessedAPITypeReasons), add the value to the game project file if they are different.

Verify privacy manifest

A privacy report can be generated using Xcode 15, to verify if expectations have been met.