private void PauseSessionHelper()
        {
            DateTime currentTime = AWSSDKUtils.CorrectedUtcNow;

            // update session info
            StopTime  = currentTime;
            Duration += Convert.ToInt64((currentTime - PreStartTime).TotalMilliseconds);

            // record session pause event
            CustomEvent pauseSessionEvent = new CustomEvent(Constants.SESSION_PAUSE_EVENT_TYPE);

            pauseSessionEvent.StartTimestamp = StartTime;

            if (StopTime != null)
            {
                pauseSessionEvent.StopTimestamp = StopTime;
            }
            pauseSessionEvent.SessionId = SessionId;
            pauseSessionEvent.Duration  = Duration;
            MobileAnalyticsManager.GetInstance(_appID).RecordEvent(pauseSessionEvent);
        }
        private void StopSessionHelper()
        {
            DateTime currentTime = AWSSDKUtils.CorrectedUtcNow;

            // update session info
            StopTime = currentTime;

            // record session stop event
            CustomEvent stopSessionEvent = new CustomEvent(Constants.SESSION_STOP_EVENT_TYPE);

            stopSessionEvent.StartTimestamp = StartTime;

            if (StopTime != null)
            {
                stopSessionEvent.StopTimestamp = StopTime;
            }
            stopSessionEvent.SessionId = SessionId;
            stopSessionEvent.Duration  = Duration;

            MobileAnalyticsManager.GetInstance(_appID).RecordEvent(stopSessionEvent);
        }
Ejemplo n.º 3
0
        public static bool init()
        {
            bool ret = ReadCofig();

            if (ret == false)
            {
                Logger.LogMessage(typeof(Program), Logger.Severity.Error,
                                  "Failed to read config file " + ConfigXmlFile);
                return(false);
            }

            Amazon.AWSConfigs.ApplicationName = ApplicationName;

            MobileAnalyticsManagerConfig config = new MobileAnalyticsManagerConfig();

            config.AllowUseDataNetwork = true;
            //config.DBWarningThreshold = 0.9f;
            config.MaxDBSize = 5242880 * 2;
            //config.MaxRequestSize = 102400;
            //config.SessionTimeout = 5;

            config.ClientContextConfiguration.Platform = "Windows";

            try
            {
                _manager = MobileAnalyticsManager.GetOrCreateInstance(AppId,                                   //Amazon Mobile Analytics App ID
                                                                      new CognitoAWSCredentials(CognitoPoolID, //Amazon Cognito Identity Pool ID
                                                                                                Amazon.RegionEndpoint.USEast1),
                                                                      Amazon.RegionEndpoint.USEast1, config);
            }
            catch (Exception ex)
            {
                Logger.LogMessage(typeof(Program), Logger.Severity.Error,
                                  "Failed to initialize MobileAnalyticsManager instance! Exception: " + ex);
                return(false);
            }

            return(true);
        }
Ejemplo n.º 4
0
        public void TestErrorEventHandler()
        {
            string appID = TestRunner.StoredSettings.AppId;
            MobileAnalyticsManager manager = MobileAnalyticsManager.GetOrCreateInstance(appID, new CognitoAWSCredentials("wrong-cognito-pool-id", RegionEndpoint.USEast1), RegionEndpoint.USEast1);

            manager.MobileAnalyticsErrorEvent += errorHandler;
            CustomEvent customEvent = new CustomEvent("TestRecordEvent");

            customEvent.AddAttribute("LevelName", "Level5");
            customEvent.AddAttribute("Successful", "True");
            customEvent.AddMetric("Score", 12345);
            customEvent.AddMetric("TimeInLevel", 64);
            manager.RecordEvent(customEvent);
            Task.Delay(TimeSpan.FromSeconds(75)).Wait();
            lock (_lock)
            {
                Assert.IsTrue(resultList.Count > 0);
                foreach (bool result in resultList)
                {
                    Assert.IsTrue(result);
                }
            }
        }
        // Use this for initialization
        void Start()
        {
            UnityInitializer.AttachToGameObject(this.gameObject);

            AWSConfigs.HttpClient     = AWSConfigs.HttpClientOption.UnityWebRequest;
            AWSConfigs.RegionEndpoint = RegionEndpoint.APNortheast1;
            //AWSConfigs.HttpClient.

            _credentials = new CognitoAWSCredentials("ap-northeast-1:9ef21a6c-f1dd-4458-b771-7228a364e7ab", RegionEndpoint.APNortheast1);

            analyticsManager = MobileAnalyticsManager.GetOrCreateInstance("d1c5b82b0d93431289415c98693ab617", _credentials,
                                                                          RegionEndpoint.USEast1);

            CustomEvent customEvent = new CustomEvent("level_complete");

            customEvent.AddAttribute("LevelName", "Level1");
            customEvent.AddAttribute("CharacterClass", "Warrior");
            customEvent.AddAttribute("Successful", "True");
            customEvent.AddMetric("Score", 12345);
            customEvent.AddMetric("TimeInLevel", 64);

            analyticsManager.RecordEvent(customEvent);
        }
Ejemplo n.º 6
0
        /// <summary>
        /// Sends Mobile Analytics events to server on coroutine.
        /// </summary>
        private IEnumerator DoWork()
        {
            while (!_shouldStop)
            {
                try
                {
                    _logger.InfoFormat("Mobile Analytics Manager is trying to deliver events in background thread.");

                    IDictionary <string, MobileAnalyticsManager> instanceDictionary = MobileAnalyticsManager.CopyOfInstanceDictionary;
                    foreach (string appId in instanceDictionary.Keys)
                    {
                        MobileAnalyticsManager manager = null;
                        try
                        {
                            manager = MobileAnalyticsManager.GetInstance(appId);
                            manager.BackgroundDeliveryClient.AttemptDelivery();
                        }
                        catch (System.Exception e)
                        {
                            _logger.Error(e, "An exception occurred in Mobile Analytics Delivery Client : {0}", e.ToString());

                            if (null != manager)
                            {
                                MobileAnalyticsErrorEventArgs eventArgs = new MobileAnalyticsErrorEventArgs(this.GetType().Name, "An exception occurred when deliverying events to Amazon Mobile Analytics.", e, new List <Amazon.MobileAnalytics.Model.Event>());
                                manager.OnRaiseErrorEvent(eventArgs);
                            }
                        }
                    }
                }
                catch (System.Exception e)
                {
                    _logger.Error(e, "An exception occurred in Mobile Analytics Manager.");
                }

                yield return(new WaitForSeconds(BackgroundSubmissionWaitTime));
            }
        }
Ejemplo n.º 7
0
        private async Task DoWorkAsync(int millisecondsDelay)
        {
            while (true)
            {
                await Task.Delay(millisecondsDelay);

                try
                {
                    _logger.InfoFormat("Mobile Analytics Manager is trying to deliver events in background thread.");

                    IDictionary <string, MobileAnalyticsManager> instanceDictionary = MobileAnalyticsManager.CopyOfInstanceDictionary;
                    foreach (string appId in instanceDictionary.Keys)
                    {
                        MobileAnalyticsManager manager = null;
                        try
                        {
                            manager = MobileAnalyticsManager.GetInstance(appId);
                            await manager.BackgroundDeliveryClient.AttemptDeliveryAsync();
                        }
                        catch (System.Exception e)
                        {
                            _logger.Error(e, "An exception occurred in Mobile Analytics Delivery Client : {0}", e.ToString());

                            if (null != manager)
                            {
                                MobileAnalyticsErrorEventArgs eventArgs = new MobileAnalyticsErrorEventArgs(this.GetType().Name, "An exception occurred when deliverying events to Amazon Mobile Analytics.", e, new List <Amazon.MobileAnalytics.Model.Event>());
                                manager.OnRaiseErrorEvent(eventArgs);
                            }
                        }
                    }
                }
                catch (System.Exception e)
                {
                    _logger.Error(e, "An exception occurred in Mobile Analytics Manager : {0}", e.ToString());
                }
            }
        }
Ejemplo n.º 8
0
        public void TestRecordEvent()
        {
            string appID = Guid.NewGuid().ToString();
            MobileAnalyticsManager manager    = MobileAnalyticsManager.GetOrCreateInstance(appID, CommonTests.Framework.TestRunner.Credentials, RegionEndpoint.USEast1);
            SQLiteEventStore       eventStore = new SQLiteEventStore(new MobileAnalyticsManagerConfig());

            try
            {
                CustomEvent customEvent = new CustomEvent("TestRecordEvent");
                customEvent.AddAttribute("LevelName", "Level5");
                customEvent.AddAttribute("Successful", "True");
                customEvent.AddMetric("Score", 12345);
                customEvent.AddMetric("TimeInLevel", 64);
                manager.RecordEvent(customEvent);

                MonetizationEvent monetizationEvent = new MonetizationEvent();
                monetizationEvent.Quantity           = 10.0;
                monetizationEvent.ItemPrice          = 2.00;
                monetizationEvent.ProductId          = "ProductId123";
                monetizationEvent.ItemPriceFormatted = "$2.00";
                monetizationEvent.Store         = "Amazon";
                monetizationEvent.TransactionId = "TransactionId123";
                monetizationEvent.Currency      = "USD";
                manager.RecordEvent(monetizationEvent);
            }
            catch (Exception e)
            {
                Console.WriteLine("Catch exception: " + e.ToString());
                Assert.Fail();
            }

            // sleep a while to make sure event is stored
            Task.Delay(TimeSpan.FromSeconds(1)).Wait();

            // Event store should have one custom event, one monetization event and one session start event.
            Assert.AreEqual(3, eventStore.NumberOfEvents(appID));
        }
Ejemplo n.º 9
0
        private void ResumeSession()
        {
            DateTime currentTime = DateTime.UtcNow;

            // update session info
            lock (_lock)
            {
                _preStartTime = currentTime;
            }

            // record session resume event
            CustomEvent customEvent = new CustomEvent(SESSION_RESUME_EVENT_TYPE);

            lock (_lock)
            {
                if (_stopTime != null)
                {
                    customEvent.StopTimestamp = ((DateTime)_stopTime).ToString(AWSSDKUtils.ISO8601DateFormatNoMS);
                }

                customEvent.Duration = _duration;
            }
            MobileAnalyticsManager.GetInstance(_appid).RecordEvent(customEvent);
        }
Ejemplo n.º 10
0
        public void TestManagerAddClientContextCustomAttribute()
        {
            string KEY1   = "key1";
            string KEY2   = "key2";
            string VALUE1 = "value1";
            string VALUE2 = "value2";
            string appId  = "dummy-id";

            MobileAnalyticsManager manager = GetMobileAnalyticsManager(appId);

            manager.AddClientContextCustomAttribute(KEY1, VALUE1);
            manager.AddClientContextCustomAttribute(KEY2, VALUE2);

            string clientContextString = manager.ClientContext.ToJsonString();

            Assert.IsTrue(clientContextString.IndexOf("custom") > 0);
            Assert.IsTrue(clientContextString.IndexOf(KEY1) > 0);
            Assert.IsTrue(clientContextString.IndexOf(KEY2) > 0);

            Assert.IsTrue(clientContextString.IndexOf("custom") < clientContextString.IndexOf(KEY1));
            Assert.IsTrue(clientContextString.IndexOf("custom") < clientContextString.IndexOf(KEY2));
            Assert.IsTrue(clientContextString.IndexOf(KEY1) < clientContextString.IndexOf(VALUE1));
            Assert.IsTrue(clientContextString.IndexOf(KEY2) < clientContextString.IndexOf(VALUE2));
        }
Ejemplo n.º 11
0
        public void TestConstructor()
        {
            string appID1 = Guid.NewGuid().ToString();

            MobileAnalyticsManager.GetOrCreateInstance(appID1, CommonTests.Framework.TestRunner.Credentials, RegionEndpoint.USEast1);
            Assert.IsNotNull(MobileAnalyticsManager.GetInstance(appID1));

            string appID2 = Guid.NewGuid().ToString();

            MobileAnalyticsManager.GetOrCreateInstance(appID2, CommonTests.Framework.TestRunner.Credentials, RegionEndpoint.USEast1, new MobileAnalyticsManagerConfig());
            Assert.IsNotNull(MobileAnalyticsManager.GetInstance(appID2));

            string notInstantiatedID = Guid.NewGuid().ToString();

            try
            {
                MobileAnalyticsManager.GetInstance(notInstantiatedID);
            }
            catch (InvalidOperationException e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.IsTrue(e is InvalidOperationException);
            }
        }
Ejemplo n.º 12
0
 /// <summary>
 /// Constructor of <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.DeliveryClient"/> class.
 /// </summary>
 /// <param name="maConfig">Mobile Analytics Manager configuration. <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.MobileAnalyticsManagerConfig"/></param>
 /// <param name="clientContext">An instance of ClientContext. <see cref="Amazon.Runtime.Internal.ClientContext"/></param>
 /// <param name="credentials">An instance of Credentials. <see cref="Amazon.Runtime.AWSCredentials"/></param>
 /// <param name="regionEndPoint">Region endpoint. <see cref="Amazon.RegionEndpoint"/></param>
 /// <param name="maManager">Mobile Analytics Manager instance. <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.MobileAnalyticsManager"/></param>
 public DeliveryClient(MobileAnalyticsManagerConfig maConfig, ClientContext clientContext, AWSCredentials credentials, RegionEndpoint regionEndPoint, MobileAnalyticsManager maManager) :
     this(new DeliveryPolicyFactory(maConfig.AllowUseDataNetwork), maConfig, clientContext, credentials, regionEndPoint, maManager)
 {
 }
Ejemplo n.º 13
0
        public void TestConstructor()
        {
            string appID1 = Guid.NewGuid().ToString();

            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID1, Credentials, RegionEndpoint.USEast1);
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID1));

            string appID2 = Guid.NewGuid().ToString();

            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID2, Credentials, RegionEndpoint.USEast1, new MobileAnalyticsManagerConfig());
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID2));


            string notInstantiatedID = Guid.NewGuid().ToString();

            try
            {
                MobileAnalyticsManager.GetInstance(notInstantiatedID);
            }
            catch (InvalidOperationException e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.IsTrue(e is InvalidOperationException);
            }

#if BCL
            string appID3 = Guid.NewGuid().ToString();
            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID3);
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID3));


            string appID4 = Guid.NewGuid().ToString();
            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID4, Credentials);
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID4));

            string appID5 = Guid.NewGuid().ToString();
            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID5, RegionEndpoint.USEast1);
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID5));


            string appID6 = Guid.NewGuid().ToString();
            try
            {
                MobileAnalyticsManager.GetOrCreateInstance(appID6, new MobileAnalyticsManagerConfig());
            }
            catch (Exception e)
            {
                Console.WriteLine("get exception in constrctor :", e.ToString());
                Assert.Fail();
            }
            Assert.IsTrue(null != MobileAnalyticsManager.GetInstance(appID6));
#endif
        }
Ejemplo n.º 14
0
        public void TestSessionTimeout()
        {
            MobileAnalyticsManagerConfig maConfig = new MobileAnalyticsManagerConfig();

            Console.WriteLine("session delta is " + maConfig.SessionTimeout);

            string appID = Guid.NewGuid().ToString();

            // create AmazonMobileAnayticsManager instance
            MobileAnalyticsManager.GetOrCreateInstance(appID, CommonTests.Framework.TestRunner.Credentials, RegionEndpoint.USEast1, maConfig);
            Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.Session session = new Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.Session(appID, new MobileAnalyticsManagerConfig());
            session.Start();
            DateTime startTime1 = session.StartTime;
            string   sessionId1 = session.SessionId;

            // sleep for a while but wake up before session expires
            session.Pause();
            Task.Delay(TimeSpan.FromSeconds(maConfig.SessionTimeout - 1)).Wait();
            session.Resume();

            // make sure session is not expired
            DateTime startTime2 = session.StartTime;
            string   sessionId2 = session.SessionId;

            Assert.IsTrue(startTime1 == startTime2);
            Assert.IsTrue(sessionId1 == sessionId2);

            // sleep longer until session expires
            session.Pause();
            Task.Delay(TimeSpan.FromSeconds(maConfig.SessionTimeout + 1)).Wait();
            session.Resume();

            // make sure session is expired
            DateTime startTime3 = session.StartTime;
            string   sessionId3 = session.SessionId;

            Assert.IsTrue(startTime3 > startTime2);
            Assert.IsTrue(sessionId2 != sessionId3);

            // sleep for a while but wake up before session expires
            session.Pause();
            Task.Delay(TimeSpan.FromSeconds(maConfig.SessionTimeout - 1)).Wait();
            session.Resume();

            // make sure session is not expired
            DateTime startTime4 = session.StartTime;
            string   sessionId4 = session.SessionId;

            Assert.IsTrue(startTime4 == startTime3);
            Assert.IsTrue(sessionId4 == sessionId3);

            // sleep longer until session expires
            session.Pause();
            Task.Delay(TimeSpan.FromSeconds(maConfig.SessionTimeout + 1)).Wait();
            session.Resume();

            // make sure session is expired
            DateTime startTime5 = session.StartTime;
            string   sessionId5 = session.SessionId;

            Assert.IsTrue(startTime5 > startTime4);
            Assert.IsTrue(sessionId5 != sessionId4);
        }
Ejemplo n.º 15
0
    // Use this for initialization
    void Start()
    {
        UnityInitializer.AttachToGameObject(this.gameObject);

        Debug.Log("mobileAppId::::" + mobileAppId);
        AWSConfigs.HttpClient = AWSConfigs.HttpClientOption.UnityWebRequest;


        //AWS Mobile Analytics init
        analyticsManager = MobileAnalyticsManager.GetOrCreateInstance(mobileAppId, new CognitoAWSCredentials(mobileIdentityPoolId, _Region), AnalyticsRegion);


        /*
         * Amazon Cognito
         * data synchronize
         *
         * // Open your datasets
         * userInfo = SyncManager.OpenOrCreateDataset("UserInfo");
         *
         * userInfo.OnSyncSuccess += SyncSuccessCallback;
         * userInfo.OnSyncFailure += SynFailure;
         *
         * // init user Info
         * loginTime = DateTime.Now.ToString();
         * float randomNum = UnityEngine.Random.Range(0f, 10.0f);
         * userId = getLoginId((int)randomNum);
         *
         * userInfo.Put("userId",userId);
         * userInfo.Put("loginTime",loginTime);
         *
         * Debug.Log("userId::::"+userId);
         * Debug.Log("loginTime::::" + loginTime);
         *
         * userInfo.SynchronizeAsync();
         */


        // Analystics For Custom Event
        CustomEvent customEvent = new CustomEvent("SceneLoading");

        customEvent.AddAttribute("SceneName", "Level1");
        customEvent.AddAttribute("CharacterClass", "Warrior");
        customEvent.AddAttribute("Successful", "True");
        customEvent.AddMetric("Score", 12345);
        customEvent.AddMetric("TimeInLevel", 64);

        analyticsManager.RecordEvent(customEvent);

        //Analystics For Common Event
        MonetizationEvent monetizationEvent = new MonetizationEvent();

        monetizationEvent.Quantity           = 3.0;
        monetizationEvent.ItemPrice          = 1.99;
        monetizationEvent.ProductId          = "ProductId123";
        monetizationEvent.ItemPriceFormatted = "$1.99";
        monetizationEvent.Store         = "Apple";
        monetizationEvent.TransactionId = "TransactionId123";
        monetizationEvent.Currency      = "USD";

        analyticsManager.RecordEvent(monetizationEvent);

        Debug.Log("SynchronizeAsync Called::::");

        // call scene 2
        StartCoroutine(LoadScene());
    }
Ejemplo n.º 16
0
 private MobileAnalyticsManager GetMobileAnalyticsManager(string appId)
 {
     return(MobileAnalyticsManager.GetOrCreateInstance(CommonTests.Framework.TestRunner.Credentials, RegionEndpoint.USEast1, appId, null));
 }
Ejemplo n.º 17
0
        /// <summary>
        /// Constructor of <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.DeliveryClient"/> class.
        /// </summary>
        /// <param name="policyFactory">An instance of IDeliveryPolicyFactory. <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.IDeliveryPolicyFactory"/></param>
        /// <param name="maConfig">Mobile Analytics Manager configuration. <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.MobileAnalyticsManagerConfig"/></param>
        /// <param name="clientContext">An instance of ClientContext. <see cref="Amazon.Runtime.Internal.ClientContext"/></param>
        /// <param name="credentials">An instance of Credentials. <see cref="Amazon.Runtime.AWSCredentials"/></param>
        /// <param name="regionEndPoint">Region endpoint. <see cref="Amazon.RegionEndpoint"/></param>
        /// <param name="maManager">Mobile Analytics Manager instance. <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.MobileAnalyticsManager"/></param>
        public DeliveryClient(IDeliveryPolicyFactory policyFactory, MobileAnalyticsManagerConfig maConfig, ClientContext clientContext, AWSCredentials credentials, RegionEndpoint regionEndPoint, MobileAnalyticsManager maManager)
        {
            _policyFactory    = policyFactory;
            _deliveryPolicies = new List <IDeliveryPolicy>();
            _deliveryPolicies.Add(_policyFactory.NewConnectivityPolicy());

            _clientContext = clientContext;
            _appID         = clientContext.AppID;
            _maConfig      = maConfig;
            _eventStore    = new SQLiteEventStore(maConfig);
            _maManager     = maManager;


            if (null == credentials && null == regionEndPoint)
            {
                _mobileAnalyticsLowLevelClient = new AmazonMobileAnalyticsClient();
            }
            else if (null == credentials)
            {
                _mobileAnalyticsLowLevelClient = new AmazonMobileAnalyticsClient(regionEndPoint);
            }
            else if (null == regionEndPoint)
            {
                _mobileAnalyticsLowLevelClient = new AmazonMobileAnalyticsClient(credentials);
            }
            else
            {
                _mobileAnalyticsLowLevelClient = new AmazonMobileAnalyticsClient(credentials, regionEndPoint);
            }
        }
Ejemplo n.º 18
0
 /// <summary>
 /// Constructor of <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.DeliveryClient"/> class.
 /// </summary>
 /// <param name="policyFactory">An instance of IDeliveryPolicyFactory <see cref="Amazon.MobileAnalytics.MobileAnalyticsManager.Internal.IDeliveryPolicyFactory"/></param>
 /// <param name="maConfig"></param>
 /// <param name="maManager"></param>
 /// <param name="clientContext">An instance of ClientContext <see cref="Amazon.Runtime.Internal.ClientContext"/></param>
 /// <param name="credentials">An instance of Credentials <see cref="Amazon.Runtime.AWSCredentials"/></param>
 /// <param name="regionEndPoint">Region end point <see cref="Amazon.RegionEndpoint"/></param>
 public DeliveryClient(IDeliveryPolicyFactory policyFactory, MobileAnalyticsManagerConfig maConfig, ClientContext clientContext, AWSCredentials credentials, RegionEndpoint regionEndPoint, MobileAnalyticsManager maManager)
 {
     _policyFactory = policyFactory;
     _mobileAnalyticsLowLevelClient = new AmazonMobileAnalyticsClient(credentials, regionEndPoint);
     _clientContext    = clientContext;
     _appID            = clientContext.AppID;
     _maConfig         = maConfig;
     _maManager        = maManager;
     _eventStore       = UnityEngine.Application.platform == UnityEngine.RuntimePlatform.WebGLPlayer ? (IEventStore) new FileEventStore(maConfig) : new SQLiteEventStore(maConfig);
     _deliveryPolicies = new List <IDeliveryPolicy>();
     _deliveryPolicies.Add(_policyFactory.NewConnectivityPolicy());
 }
Ejemplo n.º 19
0
 private void initCognitoAndAnalytics()
 {
     _credentials     = new CognitoAWSCredentials(IdentityPoolId, Amazon.RegionEndpoint.USEast1);
     analyticsManager = MobileAnalyticsManager.GetOrCreateInstance(_credentials, Amazon.RegionEndpoint.USEast1, AppId);
 }