Skip to main content

Mobile Packaging Guide

Mobile integration covers many third-party channels, and platform configurations vary between Android and iOS. Pay special attention during packaging in Unity and Unreal.However, don't worry. This article will guide you step-by-step through the packaging process.

Prerequisites

Please ensure PlayerNetwork SDK is integrated and functioning normally.

For details, please refer to Player Network SDK Integration

Android

1. Firebase Configuration

The path to the Firebase configuration file is:

Android: Assets/Plugins/Android/google-services.json

Make sure the Firebase configuration file for the corresponding platform has not been deleted and all configuration items are correct.

2. Version-specific Android adaptation documentation

For more version-specific Android adaptation documentation, please refer to:

iOS

1. Merge Privacy Manifest

Version requirement: Player Network SDK V1.22 and above

Starting from Spring 2024, for applications that need to be updated or uploaded to Apple App Store Connect, developers must explicitly state the usage reasons to show how the app uses the required reason API (an API for which a usage reason must be submitted).For more information, see Upcoming Third-party SDK Requirements.

For Player Network SDK plugins affected, those that need to be manually merged include INTLFoundation, INTLCore, and INTLGarena. INTLGarena only needs to be configured when the project confirms integration with Garena.
Additionally, INTLLine is automatically integrated by Player Network SDK and does not require extra steps.

Since privacy manifests for other third-party SDKs have not yet been released, the Player Network SDK privacy manifest currently does not include corresponding entries.To view the list of plugins that have not yet been released, refer to iOS 17 Privacy Manifest.

Steps

  1. Locate the privacy manifest PrivacyInfo.xcprivacy of the required plugins in the Player Network SDK product directory.
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
  1. Use the four nodes in PrivacyInfo.xcprivacy of the Player Network SDK to compare with the corresponding entries in the game's project PrivacyInfo.xcprivacy file, and merge based on the following conditions.

    1. Privacy Nutrition Label Types (NSPrivacyCollectedDataTypes) is the node describing the types of data used:
      Compare each item's Collected Data Type (NSPrivacyCollectedDataType), and if there are different values, add them to the game project file.
      If there are same values, compare the Collection Purposes (NSPrivacyCollectedDataTypePurposes). If different, add them to the game project file.

    2. Privacy Tracking Domains (NSPrivacyTrackingDomains) is the node for the tracked domain list:
      Compare the corresponding node; if there are different values, add them to the game project file.

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

    4. Privacy Accessed API Types (NSPrivacyAccessedAPITypes) is the node describing the types of APIs used:
      Compare each item's Privacy Accessed API Type (NSPrivacyAccessedAPIType), and if there are different values, add them to the game project file.
      If there are same values, compare the Privacy Accessed API Reasons (NSPrivacyAccessedAPITypeReasons). If different, add them to the game project file.

  2. Generate a privacy report with Xcode 15 to verify that everything meets expectations.

2) INTLConfig.ini Configuration

note

When manually modifying the INTLConfig.ini file, please contact the Player Network support to confirm that the changes are as expected. For details, see SDK Config Instructions.

Please configure according to the instructions in INTLConfig.ini.

3. Firebase Configuration

The path to the Firebase configuration file is:

iOS: Assets/Plugins/iOS/INTLSDK/INTLFirebase/ThirdSDK/GoogleService-Info.plist

Make sure the Firebase configuration file for the corresponding platform has not been deleted and all configuration items are correct.

4. Version-specific iOS adaptation documentation

For more version-specific iOS adaptation documentation, please refer to: