Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added method to trigger prompting if needed #90

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Added method to trigger prompting if needed #90

wants to merge 1 commit into from

Conversation

yas375
Copy link
Contributor

@yas375 yas375 commented Apr 5, 2013

This change reduces some code duplication and allows to ask outside iRate to prompt the user to rate app if needed.

Why do we need this.

We use custom dialog for prompting. In iRateShouldPromptForRating we return NO and show our custom dialog. So iRate handles all the logic for us (thanks!).

Also we have a passcode which can be enabled or disabled. We want to prompt the user at launch (promptAtLaunch is true). But if the user has enabled the passcode in our app we don't want to ask him to rate the app until he enter passcode. That's why we have something like this:

#pragma mark - iRateDelegate

- (BOOL)iRateShouldPromptForRating
{
  if (self.presentingPasscodeInput == NO) {
    // show our custom prompt
  }
  return NO;
}

And when passcode is unlocked I need to ask iRate to prompt the user to rate the app if needed.

As one of solutions is when the passcode is unlocked to call:

if ([[iRate sharedInstance] shouldPromptForRating])
{
     [[iRate sharedInstance] promptIfNetworkAvailable];
}

But it doesn't seems very nice to me. I think call [[iRate sharedInstance] promptIfNeeded] is cleaner. And it also reduces some code duplication in the library itself.

Thoughts? :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant