/// <summary>
        /// Sets the preferred <see cref="SystemLanguage"/> used by the Bose AR SDK. If different from the
        /// current preferred language <seealso cref="LanguagePreferenceChanged"/> will be invoked.
        /// </summary>
        /// <param name="preferredLanguage"></param>
        public static void SetPreferredSystemLanguage(SystemLanguage preferredLanguage)
        {
            var currentLanguage = GetPreferredSystemLanguage();

            if (currentLanguage != preferredLanguage)
            {
                PlayerPrefs.SetInt(WearableConstants.PREF_PREFERRED_SYSTEM_LANGUAGE, (int)preferredLanguage);

                if (LanguagePreferenceChanged != null)
                {
                    LanguagePreferenceChanged.Invoke();
                }
            }
        }
        /// <summary>
        /// Clears the preferred system language
        /// </summary>
        public static void ClearSystemLanguagePreference()
        {
            var currentLanguage = GetPreferredSystemLanguage();

            if (PlayerPrefs.HasKey(WearableConstants.PREF_PREFERRED_SYSTEM_LANGUAGE))
            {
                PlayerPrefs.DeleteKey(WearableConstants.PREF_PREFERRED_SYSTEM_LANGUAGE);
            }

            // If our new preferred language is different from our last, invoke the proper event.
            var newCurrentLanguage = GetPreferredSystemLanguage();

            if (currentLanguage != newCurrentLanguage &&
                LanguagePreferenceChanged != null)
            {
                LanguagePreferenceChanged.Invoke();
            }
        }