示例#1
0
 public AdjustDelegateXamarin(string currentBasePath, AdjustDelegateXamarinOptions delegateOptions)
 {
     _currentBasePath = currentBasePath;
     _delegateOptions = delegateOptions;
 }
示例#2
0
        private void Config()
        {
            var configNumber = 0;

            if (Command.ContainsParameter("configName"))
            {
                var configName = Command.GetFirstParameterValue("configName");
                configNumber = int.Parse(configName.Substring(configName.Length - 1));
            }

            ADJConfig   adjustConfig;
            ADJLogLevel logLevel = ADJLogLevel.Verbose;

            if (Command.ContainsParameter("logLevel"))
            {
                var logLevelString = Command.GetFirstParameterValue("logLevel");
                switch (logLevelString)
                {
                case "verbose":
                    logLevel = ADJLogLevel.Verbose;
                    break;

                case "debug":
                    logLevel = ADJLogLevel.Debug;
                    break;

                case "info":
                    logLevel = ADJLogLevel.Info;
                    break;

                case "warn":
                    logLevel = ADJLogLevel.Warn;
                    break;

                case "error":
                    logLevel = ADJLogLevel.Error;
                    break;

                case "assert":
                    logLevel = ADJLogLevel.Assert;
                    break;

                case "suppress":
                    logLevel = ADJLogLevel.Suppress;
                    break;
                }

                Console.WriteLine(TAG + ": TestApp LogLevel = {0}", logLevel);
            }

            if (_savedConfigs.ContainsKey(configNumber))
            {
                adjustConfig = _savedConfigs[configNumber];
            }
            else
            {
                var environment = Command.GetFirstParameterValue("environment");
                var appToken    = Command.GetFirstParameterValue("appToken");

                adjustConfig          = ADJConfig.ConfigWithAppToken(appToken, environment);
                adjustConfig.LogLevel = logLevel;

                _savedConfigs.Add(configNumber, adjustConfig);
            }

            if (Command.ContainsParameter("sdkPrefix"))
            {
                adjustConfig.SdkPrefix = Command.GetFirstParameterValue("sdkPrefix");
            }

            if (Command.ContainsParameter("defaultTracker"))
            {
                adjustConfig.DefaultTracker = Command.GetFirstParameterValue("defaultTracker");
            }

            if (Command.ContainsParameter("externalDeviceId"))
            {
                adjustConfig.ExternalDeviceId = Command.GetFirstParameterValue("externalDeviceId");
            }

            if (Command.ContainsParameter("delayStart"))
            {
                var delayStartStr = Command.GetFirstParameterValue("delayStart");
                var delayStart    = double.Parse(delayStartStr);
                Console.WriteLine(TAG + ": Delay start set to: " + delayStart);
                adjustConfig.DelayStart = delayStart;
            }

            if (Command.ContainsParameter("appSecret"))
            {
                var appSecretList = Command.Parameters["appSecret"];
                Console.WriteLine(TAG + ": Received AppSecret array: " + string.Join(",", appSecretList));

                if (!string.IsNullOrEmpty(appSecretList[0]) && appSecretList.Count == 5)
                {
                    long secretId, info1, info2, info3, info4;
                    long.TryParse(appSecretList[0], out secretId);
                    long.TryParse(appSecretList[1], out info1);
                    long.TryParse(appSecretList[2], out info2);
                    long.TryParse(appSecretList[3], out info3);
                    long.TryParse(appSecretList[4], out info4);

                    adjustConfig.SetAppSecret(secretId, info1, info2, info3, info4);
                }
                else
                {
                    Console.WriteLine("App secret list does not contain 5 elements! Skip setting app secret.");
                }
            }

            if (Command.ContainsParameter("deviceKnown"))
            {
                var deviceKnownS = Command.GetFirstParameterValue("deviceKnown");
                var deviceKnown  = deviceKnownS.ToLower() == "true";
                adjustConfig.isDeviceKnown = deviceKnown;
            }

            if (Command.ContainsParameter("eventBufferingEnabled"))
            {
                var eventBufferingEnabledS = Command.GetFirstParameterValue("eventBufferingEnabled");
                var eventBufferingEnabled  = eventBufferingEnabledS.ToLower() == "true";
                adjustConfig.EventBufferingEnabled = eventBufferingEnabled;
            }

            if (Command.ContainsParameter("sendInBackground"))
            {
                var sendInBackgroundS = Command.GetFirstParameterValue("sendInBackground");
                var sendInBackground  = sendInBackgroundS.ToLower() == "true";
                adjustConfig.SendInBackground = sendInBackground;
            }

            if (Command.ContainsParameter("allowIdfaReading"))
            {
                var allowIdfaReadingS = Command.GetFirstParameterValue("allowIdfaReading");
                var allowIdfaReading  = allowIdfaReadingS.ToLower() == "true";
                adjustConfig.AllowIdfaReading = allowIdfaReading;
            }

            if (Command.ContainsParameter("allowiAdInfoReading"))
            {
                var allowiAdInfoReadingS = Command.GetFirstParameterValue("allowiAdInfoReading");
                var allowiAdInfoReading  = allowiAdInfoReadingS.ToLower() == "true";
                adjustConfig.AllowiAdInfoReading = allowiAdInfoReading;
            }

            if (Command.ContainsParameter("allowAdServicesInfoReading"))
            {
                var allowAdServicesInfoReadingS = Command.GetFirstParameterValue("allowAdServicesInfoReading");
                var allowAdServicesInfoReading  = allowAdServicesInfoReadingS.ToLower() == "true";
                adjustConfig.AllowAdServicesInfoReading = allowAdServicesInfoReading;
            }

            if (Command.ContainsParameter("userAgent"))
            {
                var userAgent = Command.GetFirstParameterValue("userAgent");
                adjustConfig.UserAgent = userAgent;
            }

            AdjustDelegateXamarinOptions delegateOptions = new AdjustDelegateXamarinOptions();

            if (Command.ContainsParameter("deferredDeeplinkCallback"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - deferredDeeplinkCallback detected!");
                delegateOptions.SetDeeplinkResponseDelegate = true;
            }

            if (Command.ContainsParameter("attributionCallbackSendAll"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - attributionCallbackSendAll detected!");
                delegateOptions.SetAttributionChangedDelegate = true;
            }

            if (Command.ContainsParameter("sessionCallbackSendSuccess"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - sessionCallbackSendSuccess detected!");
                delegateOptions.SetSessionTrackingSuccessDelegate = true;
            }

            if (Command.ContainsParameter("sessionCallbackSendFailure"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - sessionCallbackSendFailure detected!");
                delegateOptions.SetSessionTrackingFailedDelegate = true;
            }

            if (Command.ContainsParameter("eventCallbackSendSuccess"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - eventCallbackSendSuccess detected!");
                delegateOptions.SetEventTrackingSuccessDelegate = true;
            }

            if (Command.ContainsParameter("eventCallbackSendFailure"))
            {
                Console.WriteLine(TAG + ": AdjustDelegate - eventCallbackSendFailure detected!");
                delegateOptions.SetEventTrackingFailedDelegate = true;
            }

            adjustConfig.Delegate = new AdjustDelegateXamarin(ExtraPath, delegateOptions);
        }