takecian / SwiftRater

A utility that reminds your iPhone app's users to review the app written in pure Swift.
MIT License
356 stars 42 forks source link

Use of significantUsesUntilPrompt in debug and release mode #17

Closed shrashwin closed 5 years ago

shrashwin commented 5 years ago

First of all thanks for the library. More than bug, I have a concern regarding the library usage.

On every significant action taken by user I have called the method

SwiftRater.incrementSignificantUsageCount()

and then called

SwiftRater.check()

Now my concern is when i set debug mode true, I am geting the rating alert view every single time and when I set to false, I am not geting the alert, irrespective of how many times the significant usage count was updated.

So, i am concerned that, when i send the app to app store with debug mode set false, the alert may appear every single time on action or it might never appear.

So, will the app show the rating alert only once and will work fine?

takecian commented 5 years ago

Hi @shrashwin , sorry for late reply.

SwiftRater basically shows alert only once as SwiftRater remembers whether alert already shown or not at https://github.com/takecian/SwiftRater/blob/d59deda70979f02c49d86f8d9e033713dd459931/SwiftRater/SwiftRater.swift#L296 UsageDataManager.shared.isRateDone

However if you use debug mode, alert shows every time due to this code below, https://github.com/takecian/SwiftRater/blob/d59deda70979f02c49d86f8d9e033713dd459931/SwiftRater/UsageDataManager.swift#L113

If you use debug mode and show alert, isRateDone is set to true. This means that alert will not be shown. https://github.com/takecian/SwiftRater/blob/d59deda70979f02c49d86f8d9e033713dd459931/SwiftRater/UsageDataManager.swift#L117

So SwiftRater will work fine on app via app store. Does this help?

takecian commented 5 years ago

If you have questions, pleas reopen.