Skip to main content

iOS FAQs

Why can't the callback methods of iOS AppDelegate be called?

This may have been caused by the following scenarios:

  • After the login authorization of Facebook app, AppDelegate's OpenURL method cannot be called.
  • Firebase SDK's automatic method swizzling has failed, and the didRegisterForRemoteNotificationsWithDeviceToken method for AppDelegate is not called.
Answer

Check all third-party libraries imported into the iOS App to see if dynamic features like Objective-C's method swizzling was incorrectly used, causing the AppDelegate callback chain to break. It is known that GluAppTracking.framework has this issue, and the solution depends on the specific game engine being used.

Why is iOS unable to receive the Deferred DeepLink from the Facebook channel?

Answer

The iOS platform requires ad tracking for both Facebook app and the game to be enabled, in order to receive the Deferred DeepLink.

If ad tracking for either side is disabled, the Facebook Deferred DeepLink function cannot be used.

Enable ad tracking for Facebook app:

  • When the ATT permission popup appears on the Facebook app, select Allow.
  • Manually go to Settings > Privacy > Tracking, then enable the toggle for Facebook app.

Enable ad tracking for your game:

  • Call RequestTrackingAuthorization. For more information, see the RequestTrackingAuthorization API for Unity SDK or Unreal Engine SDK.

During iOS packaging, the error "Could not find or use auto-linked library. Undefined symbols for architecture arm64" occurred.

Answer

The iOS Swift SDK cannot be added directly to Unreal Engine, a bridge layer must be added by modifying the engine configurations.

For information, see Bridging to Swift SDK

iOS app freezes at the logo screen, then crashes with "Watchdog Violation"

Answer

Watchdog Violation is a protective mechanism on iOS that kills processes that freezes for a certain period of time. The crash is caused by an incompatibility between Unity Mobile Notifications and Firebase SDK.

Either remove Firebase SDK, or update Unity Mobile Notifications according to the steps in Unity Issue Tracker.

For more information about the error, see iOS 15 crash with build on Xcode 13.

Does Player Network directly depend on the sensitive iOS permissions applied in INTLCore?

Answer

Permissions:

  • NSPhotoLibraryUsageDescription - To access a player's photo library, typically required to select images for use as player avatar, or to select images/videos for sharing.
  • NSCameraUsageDescription - To access the camera function, typically required to take and upload photos for use as player avatar, or to take and upload photos/videos to the customer service system.
  • NSLocationWhenInUseUsageDescription - To obtain a player's location, usually used for players searching for attachments.
  • NSPhotoLibraryAddUsageDescription - To add photos to the photo library, typically required to save images in games, such as highlights and match results.
  • NSMicrophoneUsageDescription - To access the microphone/recording function, typically required for voice communication in-game.

Player Network does not directly depend on these permissions, however NSPhotoLibraryUsageDescription and NSPhotoLibraryAddUsageDescription are required if the game needs to save images or access the photo library.

After opening the HTML5 page to delete accounts with LI PASS, why is it possible to upload photos through the photo library when authorization has not been obtained?

Answer

Image permissions for the HTML5 page and the client are independent and not related. When the game accesses files and photos through the HTML5 page, the authorization popup is not triggered, and permissions are granted without needing authorization.

Picture: iOS UI