Example #1
0
        /// <summary>
        /// Records a timed event specified by eventName.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        public void BeginLogEvent(string eventName)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.LogEvent(eventName, true);
#elif UNITY_ANDROID
            FlurryAndroid.LogEvent(eventName, true);
#endif
        }
Example #2
0
        /// <summary>
        /// Records a timed event specified by eventName.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        /// <param name="timed">Specifies the event will be timed.</param>
        public void LogEvent(string eventName, bool timed)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.LogEvent(eventName, timed);
#elif UNITY_ANDROID
            FlurryAndroid.LogEvent(eventName, timed);
#endif
        }
Example #3
0
        /// <summary>
        /// Ends a timed event specified by eventName and optionally updates parameters with
        /// parameters.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        public void EndLogEvent(string eventName)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.EndTimedEvent(eventName, new Dictionary <string, string>());
#elif UNITY_ANDROID
            FlurryAndroid.EndTimedEvent(eventName);
#endif
        }
Example #4
0
        /// <summary>
        /// Records a custom parameterized timed event specified by eventName with parameters.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        /// <param name="parameters">
        /// An immutable copy of map containing Name-Value pairs of parameters.
        /// </param>
        public void BeginLogEvent(string eventName, Dictionary <string, string> parameters)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.LogEvent(eventName, parameters, true);
#elif UNITY_ANDROID
            FlurryAndroid.LogEvent(eventName, parameters, true);
#endif
        }
Example #5
0
        /// <summary>
        /// Set your user's age in years.
        /// </summary>
        /// <param name="age">Reported age of user.</param>
        public void LogUserAge(int age)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.SetAge(age);
#elif UNITY_ANDROID
            FlurryAndroid.SetAge(age);
#endif
        }
Example #6
0
        /// <summary>
        /// Set your user's gender.
        /// </summary>
        /// <param name="gender">
        /// Reported gender of user. Allowable values are 'm' or 'c' 'f'
        /// </param>
        public void LogUserGender(UserGender gender)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.SetGender(gender == UserGender.Male ? "m" : gender == UserGender.Female ? "f" : "c");
#elif UNITY_ANDROID
            FlurryAndroid.SetGender((byte)(gender == UserGender.Male ? 1 : gender == UserGender.Female ? 0 : -1));
#endif
        }
Example #7
0
        /// <summary>
        /// Records an app exception. Commonly used to catch unhandled exceptions.
        /// </summary>
        /// <param name="errorID">Name of the error.</param>
        /// <param name="message">The message to associate with the error.</param>
        /// <param name="exception">The exception object to report.</param>
        public void LogError(string errorID, string message, object target)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.LogError(errorID, message, null);
#elif UNITY_ANDROID
            FlurryAndroid.OnError(errorID, message, target.GetType().Name);
#endif
        }
Example #8
0
        /// <summary>
        /// Assign a unique id for a user in your app.
        /// </summary>
        /// <param name="userID">The app id for a user.</param>
        public void LogUserID(string userID)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.SetUserId(userID);
#elif UNITY_ANDROID
            FlurryAndroid.SetUserId(userID);
#endif
        }
Example #9
0
        /// <summary>
        /// Generates debug logs to console.
        /// </summary>
        /// <param name="level">Log level.</param>
        public void SetLogLevel(LogLevel level)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.SetLogLevel(level);
#elif UNITY_ANDROID
            FlurryAndroid.SetLogLevel(level);
#endif
        }
Example #10
0
        /// <summary>
        /// Explicitly specifies the App Version that Flurry will use to group Analytics data.
        /// </summary>
        /// <param name="version">The custom version name.</param>
        public void LogAppVersion(string version)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.SetAppVersion(version);
#elif UNITY_ANDROID
            FlurryAndroid.SetVersionName(version);
#endif
        }
        /// <summary>
        /// Records an app exception. Commonly used to catch unhandled exceptions.
        /// </summary>
        /// <param name="errorID">Name of the error.</param>
        /// <param name="message">The message to associate with the error.</param>
        /// <param name="exception">The exception object to report.</param>
        public void LogError(string errorID, string message)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.LogError(errorID, message, null);
#elif UNITY_ANDROID
            FlurryAndroid.OnError(errorID, message, null);
#endif
        }
        /// <summary>
        /// Ends a timed event specified by eventName and optionally updates parameters with
        /// parameters.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        public void EndLogEvent(string eventName)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.EndTimedEvent(eventName, null);
#elif UNITY_ANDROID
            FlurryAndroid.EndTimedEvent(eventName, null);
#endif
        }
        /// <summary>
        /// Start or continue a Flurry session for the project denoted by apiKey.
        /// </summary>
        /// <param name="apiKey">The API key for this project.</param>
        public void StartSession(string apiKeyIOS, string apiKeyAndroid)
        {
#if UNITY_EDITOR
#elif UNITY_IOS
            FlurryIOS.StartSession(apiKeyIOS);
#elif UNITY_ANDROID
            FlurryAndroid.OnStartSession(apiKeyAndroid);
#endif
        }
Example #14
0
        /// <summary>
        /// Records a custom parameterized timed event specified by eventName with parameters.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        /// <param name="parameters">
        /// An immutable copy of map containing Name-Value pairs of parameters.
        /// </param>
        public EventRecordStatus BeginLogEvent(string eventName, Dictionary <string, string> parameters)
        {
#if UNITY_EDITOR
            return(EventRecordStatus.Failed);
#elif UNITY_IOS
            return(FlurryIOS.LogEvent(eventName, parameters, true));
#elif UNITY_ANDROID
            return(FlurryAndroid.LogEvent(eventName, parameters, true));
#endif
        }
Example #15
0
        /// <summary>
        /// Records a timed event specified by eventName.
        /// </summary>
        /// <param name="eventName">
        /// Name of the event. For maximum effectiveness, we recommend using a naming scheme
        /// that can be easily understood by non-technical people in your business domain.
        /// </param>
        public EventRecordStatus BeginLogEvent(string eventName)
        {
#if UNITY_EDITOR
            return(EventRecordStatus.Failed);
#elif UNITY_IOS
            return(FlurryIOS.LogEvent(eventName, true));
#elif UNITY_ANDROID
            return(FlurryAndroid.LogEvent(eventName, true));
#endif
        }
Example #16
0
 public EventRecordStatus LogEvent(string eventName, bool timed) =>
 FlurryAndroid.LogEvent(eventName, timed);
Example #17
0
 public void EndLogEvent(string eventName)
 {
     FlurryAndroid.EndTimedEvent(eventName);
 }
Example #18
0
 public void LogAppVersion(string version)
 {
     FlurryAndroid.SetVersionName(version);
 }
Example #19
0
 public void EndLogEvent(string eventName, Dictionary <string, string> parameters)
 {
     FlurryAndroid.EndTimedEvent(eventName, parameters);
 }
Example #20
0
 public void StartSession(string apiKeyIOS, string apiKeyAndroid)
 {
     FlurryAndroid.Init(apiKeyAndroid);
     FlurryAndroid.OnStartSession();
 }
Example #21
0
 public void LogError(string errorID, string message, object target)
 {
     FlurryAndroid.OnError(errorID, message, target.GetType().Name);
 }
Example #22
0
 protected override void OnDestroy()
 {
     FlurryAndroid.Dispose();
     base.OnDestroy();
 }
Example #23
0
 public void SetLogLevel(Analytics.LogLevel level)
 {
     FlurryAndroid.SetLogLevel(level);
 }
Example #24
0
 public void LogUserID(string userID)
 {
     FlurryAndroid.SetUserId(userID);
 }
Example #25
0
 public void LogUserGender(UserGender gender)
 {
     FlurryAndroid.SetGender((gender != UserGender.Male) ? ((gender != UserGender.Female) ? ((byte)(-1)) : ((byte)0)) : ((byte)1));
 }
Example #26
0
 public void LogUserAge(int age)
 {
     FlurryAndroid.SetAge(age);
 }
Example #27
0
 public EventRecordStatus LogEvent(string eventName, Dictionary <string, string> parameters) =>
 FlurryAndroid.LogEvent(eventName, parameters);
Example #28
0
 public EventRecordStatus LogEvent(string eventName) =>
 FlurryAndroid.LogEvent(eventName);