async Task CheckAppConfiguration() { //try to get configuration configuration = appServices.GetConfiguration(); // init configuration if it's empty ( use default api key & user current location etc ..) if (string.IsNullOrEmpty(configuration.APIKey)) { await appServices.InitConfiguration(configuration); } //run synchronization if exist if (configuration.synchronization) { refreshTimer = new Timer(async(e) => { if (canRefresh) { await vm.BuildCompleteViewModel(); } canRefresh = true; }, null, 0, (int.Parse(configuration.duration)) * 60 * 1000); } // run animation id exist if (configuration.runAnimation) { animationTimer = new Timer((e) => { UIServices.ScaleImage(weatherImage); }, null, 0, AppConstants.AnimationDuration); } }