Quick troubleshooting checklist

  • Is your channel key and configuration correct?
  • Are you using the latest version of the SDK?
  • Have you enabled logging to capture errors?
  • Are you using the Managed Stripping Level property?
  • Is your JWT token valid and not expired?

Common issues and solutions

Initialization failure

  • Symptom: SDK fails to initialize.
  • Possible Causes: Incorrect channel key, missing permissions, network issues.
  • Solution: Double-check your channel key, ensure all required permissions are set, and check your network connection.

Authentication errors

  • Symptom: Users cannot authenticate or are logged out unexpectedly.
  • Possible Causes: Expired or invalid JWT token.
  • Solution: Ensure your backend generates valid JWTs and handles token refresh.

IL2CPP stripping

  • Symptom: SDK initializes in Unity Editor, but fails on mobile devices.
  • Possible Causes: SDK is being stripped by IL2CPP
  • Solution: A link.xml file must be included in the Unity Assets folder with the following contents:
<linker>       <assembly fullname="Unity.Zendesk" preserve="all"/>       <assembly fullname="Unity.Zendesk.MessagingCore" preserve="all"/></linker>

Android JNI package errors

  • Symptom: SDK fails to build on Android.
  • Possible Causes: Unity Editor Build Target is set to Android, but the necessary Android JNI package is not included in the project.
  • Solution: Look for the 'Android JNI' or com.unity.modules.androidjni package in Package Manager, and enable the package to include it in your project.

Logging best practices

  • Enable logging during development and troubleshooting:

    C#

    using Zendesk.Runtime.Logging;
    ZendeskLogger.SetEnabled(true);

    You can check the state of the Logger by using:

    C#

    ZendeskLogger.IsLogEnabled();
  • Collect logs and include them when contacting Zendesk support.


Reporting Issues

When contacting Zendesk support, please include:

  • SDK version
  • Unity version and device model
  • Steps to reproduce the issue
  • Relevant logs (with logging enabled)
  • Screenshots or screen recordings if possible
  • A demo app that reproduces the issue, if applicable

Demo game

Zendesk provides a demo game, Match 3, that showcases SDK features such as basic implementation and JWT authentication. You can download the game from the iOS App Store or Google Play Store.