コード例 #1
0
 private void rateHelper_TryReminderCompleted(object sender, RateReminderResult e)
 {
     if (TryReminderCompleted != null)
     {
         TryReminderCompleted(this, e);
     }
 }
コード例 #2
0
ファイル: RateHelper.cs プロジェクト: dantler/AppPromo
 private void OnTryReminderCompleted(RateReminderResult e)
 {
     if (TryReminderCompleted != null)
     {
         TryReminderCompleted(this, e);
     }
 }
コード例 #3
0
ファイル: MainPage.xaml.cs プロジェクト: dantler/AppPromo
 private void RateReminder_TryReminderCompleted(object sender, RateReminderResult e)
 {
     var t = Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
     {
         DaysLabel.Text     = e.Days.ToString();
         RunsLabel.Text     = e.Runs.ToString();
         ReminderLabel.Text = (e.ReminderShown ? ShownText : NotShownText);
         RatingLabel.Text   = (e.RatingShown ? ShownText : NotShownText);
     });
 }
コード例 #4
0
ファイル: MainPage.xaml.cs プロジェクト: jbienzms/AppPromo
 private void RateReminder_TryReminderCompleted(object sender, RateReminderResult e)
 {
     var t = Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
     {
         DaysLabel.Text = e.Days.ToString();
         RunsLabel.Text = e.Runs.ToString();
         ReminderLabel.Text = (e.ReminderShown ? ShownText : NotShownText);
         RatingLabel.Text = (e.RatingShown ? ShownText : NotShownText);
     });
 }
コード例 #5
0
ファイル: MainPage.xaml.cs プロジェクト: ueman/AppPromo
 private void RateReminder_TryReminderCompleted(object sender, RateReminderResult e)
 {
     // Update on UI thread
     Dispatcher.BeginInvoke(() =>
     {
         DaysLabel.Text     = e.Days.ToString();
         RunsLabel.Text     = e.Runs.ToString();
         ReminderLabel.Text = (e.ReminderShown ? ShownText : NotShownText);
         RatingLabel.Text   = (e.RatingShown ? ShownText : NotShownText);
     });
 }
コード例 #6
0
ファイル: MainPage.xaml.cs プロジェクト: betsegaw/AppPromo
 private void RateReminder_TryReminderCompleted(object sender, RateReminderResult e)
 {
     // Update on UI thread
     Dispatcher.BeginInvoke(() =>
         {
             DaysLabel.Text = e.Days.ToString();
             RunsLabel.Text = e.Runs.ToString();
             ReminderLabel.Text = (e.ReminderShown ? ShownText : NotShownText);
             RatingLabel.Text = (e.RatingShown ? ShownText : NotShownText);
         });
 }
コード例 #7
0
 private async void OnTryReminderCompleted(object sender, RateReminderResult e)
 {
     if ( e.Runs == 5 )
     {
         if(_viewModel == null)
             _viewModel = DataContext as ExtendedSplashViewModel;
         var reschedule = await _viewModel.RescheduleRating(e.RatingShown);
         if ( reschedule )
         {
             RateReminder.ResetCounters();
             RateReminder.RunsBeforeReminder = 5;
         }
     }
 }
コード例 #8
0
ファイル: RateReminder.cs プロジェクト: jbienzms/AppPromo
 private void rateHelper_TryReminderCompleted(object sender, RateReminderResult e)
 {
     if (TryReminderCompleted != null) { TryReminderCompleted(this, e); }
 }
コード例 #9
0
ファイル: RateHelper.cs プロジェクト: dantler/AppPromo
        internal async Task <RateReminderResult> InnerTryReminderAsync()
#endif
        {
            int  runs          = 0;
            int  days          = 0;
            bool reminderShown = false;
            bool ratingShown   = false;

            // If the runs reminder is enabled and has not been shown, see if we need to show it
            if ((RunsBeforeReminder > 0) && (!PlatformHelper.ReadSetting <bool>(SHOWN_FOR_RUNS_KEY, false)))
            {
                // How many runs so far?
                runs = GetRuns();

                // Have we met the threshold?
                if (runs >= RunsBeforeReminder)
                {
                    // Show the reminder
                    var runsResult = await ShowReminderAsync();

                    ratingShown = (runsResult == PromptResult.Confirm);

                    // Reminder has been shown
                    reminderShown = true;

                    // If not delayed until next time, mark as done
                    if (runsResult != PromptResult.Delay)
                    {
                        PlatformHelper.WriteSetting <bool>(SHOWN_FOR_RUNS_KEY, true);
                    }
                }
            }

            // If no reminder has been shown, and if the days reminder is enabled but hasn't been shown, see if we need to show it
            if ((!reminderShown) && (DaysBeforeReminder > 0) && (!PlatformHelper.ReadSetting <bool>(SHOWN_FOR_DAYS_KEY, false)))
            {
                // How many days so far?
                days = GetDays();

                // Have we met the threshold?
                if (days >= DaysBeforeReminder)
                {
                    // Show the reminder
                    var daysResult = await ShowReminderAsync();

                    ratingShown = (daysResult == PromptResult.Confirm);

                    // Reminder has been shown
                    reminderShown = true;

                    // If not delayed until next time, mark as done
                    if (daysResult != PromptResult.Delay)
                    {
                        PlatformHelper.WriteSetting <bool>(SHOWN_FOR_DAYS_KEY, true);
                    }
                }
            }

            // Create result
            var result = new RateReminderResult(days, runs, reminderShown, ratingShown);

            // Notify
            OnTryReminderCompleted(result);

            // Return result
            return(result);
        }